我有一张这样的表:
| ID1 | ID2 |
------------------
| 1 | 1 |
| 2 | 1 |
| 3 | 1 |
| 4 | 1 |
| 5 | 1 |
| 6 | 1 |
| 7 | 1 |
| 8 | 1 |
| 9 | 1 |
| 10 | 1 |
| 11 | 1 |
| 12 | 1 |
| 13 | 1 |
| 1 | 2 |
| 2 | 2 |
| 5 | 2 |
| 1 | 4 |
| 9 | 4 |
有些ID1同时具有1和4值:
我想像这样返回ID1:
| ID1 |
----------
| 1 |
| 9 |
我已经尝试了一些基本的查询,但我甚至没有关闭..我甚至无法让它在远程工作,我需要一些严肃的帮助。
答案 0 :(得分:3)
试试这个:
select id1
from yourtable
where id2 in (1,4)
group by id1
having count(distinct id2) = 2
答案 1 :(得分:1)
如果ID1
应该只有一个唯一值,那么以下查询将对您有用:
SELECT
ID1
FROM your_table
GROUP BY ID1
HAVING COUNT(DISTINCT ID2) > 1;
编辑:您可能正在寻找ID2 as 1 and 4 both
的参赛作品。
SELECT
ID1
FROM your_table
WHERE ID2 IN (1,4)
GROUP BY ID1
HAVING COUNT(DISTINCT ID2) = 2;
注意:如果您澄清表格中支持ID1 & ID2
的哪种组合,那会更好。