[英]Select from many-to-many table
我有一個名為option_to_name
數據的表:
+-----------+---------+
| option_id | name_id |
+-----------+---------+
| 1 | 1 |
| 1 | 2 |
| 2 | 2 |
| 3 | 2 |
+-----------+---------+
我需要選擇name_id
這與關系1
個2
的值option_id
。 我試過使用WHERE IN
但它的工作方式類似於has 1 or has 2
。
SELECT name_id FROM option_to_name WHERE option_id IN (1, 2)
有沒有什么辦法來選擇name_id
同時具有1
個2
的值option_id
?
你近了 只需添加一些聚合:
SELECT name_id
FROM option_to_name
WHERE option_id IN (1, 2)
GROUP BY name_id
HAVING COUNT(DISTINCT option_id) = 2;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.