我有两张桌子,名字分别是item
和tag
.它们具有多对多关系,因此它们的连接表是item_tag
,如下所示.
-- item table
id name
1 Item 1
2 Item 2
3 Item 3
-- tag table
id name
1 Tag 1
2 Tag 2
3 Tag 3
-- item_tag table
item_id tag_id
1 1
2 1
2 2
3 1
3 3
我需要一个SQL查询来获取具有both、Tag 1
和Tag 2
(给定标签ID的AND操作=(1,2))的项目.
也就是说,
-- Expected output
id name
2 Item 2
只有Item 2
有both、Tag 1
和Tag 2
因此,标签的逻辑应该是AND.
[WHERE IN
为此场景给出了类似的OR逻辑,因此不能使用它]
有没有人能帮我写这个查询?
谢谢!