2

私がこれを持っているとしましょう:

|ID | Val |  
+---+-----+  
| 1 |  10 |  
| 1 |  20 |  
| 1 |  30 |  
| 2 |  10 |  
| 2 |  20 |  
| 3 |  20 |  
| 3 |  30 |  
+---+-----+  

そして、10 と 30 の両方の値を持つ ID のみを選択する必要があります。では、英語で、10 と 30 の両方の値を持つ ID を教えてください。どうすればいいですか?

4

2 に答える 2

6

次のようなものを使用します。

select id
from yourtable
where val in (10, 30)
group by id
having count(distinct val) =2

SQL FiddlewithDemoを参照してください

于 2013-01-09T18:18:51.317 に答える
0
SELECT DISTINCT `ID` FROM tablename WHERE `VAL` IN ('10','30');
于 2013-01-09T18:19:21.907 に答える