这样的数据,没法查吗(14分)

  • 主题发起人 主题发起人 多多帮助
  • 开始时间 开始时间

多多帮助

Unregistered / Unconfirmed
GUEST, unregistred user!
有一个表,数据为:<br>id &nbsp; 班级<br>01 &nbsp; 一班 <br>02 &nbsp; 二班<br>03 &nbsp; 一班<br>04 &nbsp; 一班<br><br>怎么让数据按照班级next<br>比如。我选中一班。然后点next取出01,再next取出03,再next取出04,同时指针必须在01,03,04三条记录中循环!
 
当然是可以的!用可以按班级进行排列啊 order by 班级!
 
但这样还是能查到02啊。
 
我就是想跳过02.
 
你说的问题不是很明确,所以给你两条查询:<br>SELECT * FROM 表1 ORDER BY 表1.班级 desc , 表1.id;<br><br>SELECT * FROM 表1 WHERE 表1.班级="一班" ORDER BY 表1.id;
 
可能是我说清吧。不是查询的问题,是已查询过的结果中处理也就是在dbgrid中处理。<br>怎么用next或Prior移动数据时,不经过02。
 
这个似乎没什么办法,<br>要不用个变量,先把当前点击的 班级 字段值存一下<br>然后在next的时候判断一下,<br>&nbsp;如果next后的结果和变量内的字段值不等,<br>就再执行一下next。
 
这样问题是数据指针已经变动了。
 
if query1.FieldbyName('班级').asString&lt;&gt;'一班' then query1.next;
 
这样问题是数据指针已经变动了。为跳到02上。<br>问下。用过滤是不是在当前已经查找到的记录中过滤。还是重新查询数据再过滤?
 
如果重新过滤,数据指针已经变了,最好的在NEXT按纽事件里加<br>(同大器晚成的方法)<br>if query1.FieldbyName('班级').asString&lt;&gt;'一班' then query1.next;<br><br>如果不固定是一班的话,可以动态给数据集移动加事件
 
我现在想问<br>过滤是不是在当前已经查找到的记录中过滤
 
看你想还是不想了,想在当前已经查找到记录中过滤,直接用FILETER就可以,应该不影响数据指针
 
我就是用的FILETER。影响指针的。只能用findkey再定位吗
 
为什么必须用指针呢?用指针来定位吗?用不上指针,就重新过滤,不影响啥
 
接受答案了.
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
900
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部