L louew Unregistered / Unconfirmed GUEST, unregistred user! 1999-04-30 #1 请问各位大虾: 我已经用了一个QUERY来检索数据,这时,我又要从检索出来的数据中 再检索满足一定条件的数据。由于再检索数据时,要分成三种情况,请问 如何是好?
S SeaSky Unregistered / Unconfirmed GUEST, unregistred user! 1999-04-30 #2 使用Tquery1的OnFilterRecord事件. 当查询后, 使用Filtered:=True; Query过滤数据集时会执行 下面的过程. procedure TForm1.Query1FilterRecord(DataSet: TDataSet; var Accept: Boolean); begin case 条件 of case1 : Accept:= 表达式; case2 : Accept:= 表达式; case3 : accept:= 表达式; else accept:= 表达式; end; end;
使用Tquery1的OnFilterRecord事件. 当查询后, 使用Filtered:=True; Query过滤数据集时会执行 下面的过程. procedure TForm1.Query1FilterRecord(DataSet: TDataSet; var Accept: Boolean); begin case 条件 of case1 : Accept:= 表达式; case2 : Accept:= 表达式; case3 : accept:= 表达式; else accept:= 表达式; end; end;
F fx Unregistered / Unconfirmed GUEST, unregistred user! 1999-04-30 #3 分三种情况再加SQL语句好了。 query1.close; case 条件 of case1 : query1.sql.add(表达式); case2 : query1.sql.add(表达式); case3 : query1.sql.add(表达式); else query1.sql.add(表达式); query1.open;
分三种情况再加SQL语句好了。 query1.close; case 条件 of case1 : query1.sql.add(表达式); case2 : query1.sql.add(表达式); case3 : query1.sql.add(表达式); else query1.sql.add(表达式); query1.open;
M menxin Unregistered / Unconfirmed GUEST, unregistred user! 1999-05-01 #5 上面两位的意思和你想的一样吗。如果有可能,请将你的问题说得再详细些。
L LSS Unregistered / Unconfirmed GUEST, unregistred user! 1999-05-01 #6 case 条件 of case1 : select * from yourtable where (另一个SQL语句构成的条件1) case2 : select * from yourtable where (另一个SQL语句构成的条件2) case3 : select * from yourtable where (另一个SQL语句构成的条件3) end; execsql 不过这样的查询效率较低,而且条件不容易满足你的要求, 建议你用QUERY查询完后,用OnFilterRecord比较好
case 条件 of case1 : select * from yourtable where (另一个SQL语句构成的条件1) case2 : select * from yourtable where (另一个SQL语句构成的条件2) case3 : select * from yourtable where (另一个SQL语句构成的条件3) end; execsql 不过这样的查询效率较低,而且条件不容易满足你的要求, 建议你用QUERY查询完后,用OnFilterRecord比较好
L louew Unregistered / Unconfirmed GUEST, unregistred user! 1999-05-01 #7 多谢各位,问题解决了,用OnFilterRecord较好。