你好
我想你可以先写一个查询,将为5,6的记录存入一个视图或查询中。
再写一个SQL选出这个视图中记录数大于2的即可。例如:在ACCESS库中,先建一个查询Q1:
SELECT aa.a, aa.b
FROM aa
WHERE aa.b='5' OR aa.b='6';再写另一个查询:
SELECT a,count(*) as C1 FROM q1 GROUP BY a HAVING count(*)=2即可选出你要的结果!

解决方案 »

  1.   

    Select 成员编号 from 表 where 成员编号 in (select 成员编号 from 表 where 物品编号 = 5) and 成员编号 in (select 成员编号 from 表 where 物品编号 = 6)
      

  2.   

    你好
    我想你可以先写一个查询,将为5,6的记录存入一个视图或查询中。
    再写一个SQL选出这个视图中记录数大于2的即可。例如:在ACCESS库中,先建一个查询Q1:
    SELECT aa.a, aa.b
    FROM aa
    WHERE aa.b='5' OR aa.b='6';再写另一个查询:
    SELECT a,count(*) as C1 FROM q1 GROUP BY a HAVING count(*)=2即可选出你要的结果!
      

  3.   

    select dictinct 成员编号 from  成员编号 where 物品编号 = 6
    intersect 
    select dictinct 成员编号 from  成员编号 where 物品编号 = 5
      

  4.   

    select * form $tableName Where (成員編號 in ( select 成員編號 from $table where 物品編號=5)) and (成員編號 in ( select 成員編號 from $table where 物品編號=6))
      

  5.   

    SELECT 成员编号
    FROM tab_test
    WHERE 物品编号 = 5 AND 成员编号 IN
              (SELECT 成员编号
             FROM tab_test
             WHERE 物品编号 = 6)
      

  6.   

    SELECT 成员编号
    FROM tab_test
    WHERE 物品编号 = 5 AND 成员编号 IN
              (SELECT 成员编号
             FROM tab_test
             WHERE 物品编号 = 6)
      

  7.   

    (select distinct 成员编号 from  成员编号 where 物品编号 = 6)
    intersect 
    (select distinct 成员编号 from  成员编号 where 物品编号 = 5)
    最快了
    刚才错了一点
      

  8.   

    谢谢各位的帮助.
    回BLUE00:我想问如果我不在ACCESS里建立查询,而在DELPHI里建立查询,那么我应该如何写呢?
      

  9.   

    SQLStr:= SQL 语句With Query1 do
         Close;
         SQL.Clear;
         SQL.Add(SQLStr);
         Open;
    end; 
      

  10.   

    SQLStr:= SQL 语句With Query1 do
         Close;
         SQL.Clear;
         SQL.Add(SQLStr);
         Open;
    end; 
      

  11.   

    我不是这个意思,我的意思是它其中有一个查询在ACCESS里面建立,然后在DELPHI中创建另一个查询,其作用是在第一个查询结果中进行筛选.但是如果第一个查询我是在DELPHI里面建立的,而我应该如何在这个查询的结果上实现如SELECT a,count(*) as C1 FROM q1 GROUP BY a HAVING count(*)=2
    这样的筛选功能呢?