那用两个查询控件吧
query1.close;
query1.sql.clear;
query1.sql.add('select * from a');
query1.open;
for i:=1 to query1.recordcount do
begin
query2.close;
query2.sql.clear;
query2.sql.add('select * from b');
query2.sql.add('where id='''+query1.fieldvalues['id']+'''');
query2.open;
....
end;
query1.close;
query1.sql.clear;
query1.sql.add('select * from a');
query1.open;
for i:=1 to query1.recordcount do
begin
query2.close;
query2.sql.clear;
query2.sql.add('select * from b');
query2.sql.add('where id='''+query1.fieldvalues['id']+'''');
query2.open;
....
end;
然后在tmpTable中再次进行查询。3,考虑在存储过程中实现。
第二个查询直接从连接视图即可!