用ADOQuery1查询出一些记录,现在想在ADOQuery1查询记录的基础上再查询,这个怎么样实现,数据库版打不来,就发在这里了

解决方案 »

  1.   

    adoquery1.filtered:=false;
    adoquery1.filter:='aa=1';//对aa字段=1得记录进行过滤
    adoquery1.filtered:=true;
      

  2.   

    比如说用ADOQuery1查询出这些数据,
    1   2   3   4   5   6   7
    6   5   4   4   5   6   7 
    11  22  33  44  55  66  77
    现在我要查询出后面四个字段,并且要去掉重复项,统计一下有几条,得到的结果是
    4   5   6   7   2
    44  55  66  77  1最后一个字段为总的记录数,这个怎么做呀
      

  3.   

    写个sp,把数据放进临时表,Select 后加上distinct 再带上你要那几个字段。
      

  4.   

    但是我第一次查询出来的数据也要,因为不想再再用SQL语句查询一遍,主要是效率问题,现在是想在第一次查询的基础上,再执行一条SQL语句来查询
      

  5.   

    dateset应该可以实现你所说的功能
      

  6.   

    select可以当条件使用
    select * from 表 where 字段 in(select 字段 from 表 where 条件)
      

  7.   

    SQL 实现方法select 显示字段,count(1)from 表 group by 显示字段
      

  8.   

    回楼上的:
    select可以当条件使用
    select * from 表 where 字段 in(select 字段 from 表 where 条件)
    ---------------------
    SQL 实现方法select 显示字段,count(1)from 表 group by 显示字段
    ----------------
    这跟再执行一条SQL语句没什么区别,现在主要是考虑效率问题,
    看清楚我的问题是用ADOQuery1查询出一些记录,现在想在ADOQuery1查询记录的基础上再查询
      

  9.   

    再查询自然是要再执行一次SQL的,除非第1次查询已经包含第2次的数据,那么利用程序来进行过滤