在第一个queryA中使用SQL语句得到了A表的很多条数据,这些数据有AID和AMXID(明细ID)两个字段,现在要根据queryA中所有数据的AID和AMXID的值,用另外一个queryB去查B表的数据,请问我怎么把前面queryA的AID和AMXID两个参数传递到后面的查询中去???
谢谢!!!

解决方案 »

  1.   


    begin
      QueryB.Close;
      QueryB.Sql.Text := Foramt('select * from B where (字段1=%s) and (字段2=%s)',[ QueryA.FieldValues['AID'],QueryA.FieldValues['AMXID'] ]);
      QueryB.Open;
    end;//具体应用中,还要根据你的字段类型略有改动。
    //至于是传递QueryA哪一条记录的AID、AMXID值,那就要结合QueryA的记录游标移动了(First、Next、Last等)
      

  2.   

    Foramt ---> Format  -_-
      

  3.   

    先谢谢你;)
    之所以我要用几个query,是因为我的B的结果要根据A的查询结果出来,然后还有C表的查询结果又要根据B的查询结果来确定,同样D、E、F、G、H(总共8个表)都要根据前面的查询结果得出。同时ABCDEFGH每个表都不是一个单纯的表,而是由主从表组合进行查询的。所有想直接把前一步查询的结果作为一个数据集直接传过来与B表等进行关联查询,然后再把B的结果与C进行关联查询,以此类推到最后。不知道我说清楚了没有!;)