2009-06-26 127 views
0

我有以下数据:根据另一列中的值选择一列中的项目。

id1,id2 
1 3 
1 8 
1 10 
1 11 
2 3 
2 10 
2 11 
3 2 
3 18 
3 20 
4 3 
4 8 
5 3 
5 10 
5 11 
5 40 
5 45 
5 50 
6 1 
6 59 
6 70 

我不会得到与ID2 = 3,10,11全部ID1。

例如,只有id2 = 3的id1 = 4,不应该返回。

结果应该

id1 
1 
2 
5 
+4

在我看来,如果你输入一个问题,而不仅仅是一堆数据,这将是很好的。 – guerda 2009-06-26 08:45:38

回答

1

SQL代码

SELECT ID1,COUNT(ID2) FROM TBTEST 
WHERE ID2 IN(3,10,11) 
GROUP BY ID1 
HAVING COUNT(ID2)=3 

这是你需要什么?

+0

分组不是必需的,因为ID2 = 3的每次出现每个ID1只发生一次。 – guerda 2009-06-26 08:47:30

2
SELECT distinct(ID1) FROM TBTEST WHERE ID2 IN(3,10,11) 
+0

对不起。例如,只有id2 = 3的id1 = 4,不应该返回。 – 2009-06-26 08:57:25

相关问题