我有两张桌子
Topic
----------------------
id title
----------------------
1 Loops
2 Control Structure
3 Basics
Chapters
------------------------------------------------------
id book_id topic_id chapter_number
------------------------------------------------------
1 1 1 1
2 1 2 2
3 1 3 3
4 2 1 5
5 2 3 2
6 3 3 1
在搜索主题时,我想显示包含这些主题章节的 book_ids。具有主题 1 和 2 的 Book_id:1
具有主题 3 的 Book_Id:1,2,3
具有主题 1 和 3 的 BookId:1
这是我的查询:
SELECT DISTINCT chapter.book_id FROM chapter Inner Join topic ON topic.id = chapter.topic_id WHERE topic.id IN ( '1,3');
但它返回 Book_ids of : 1 和 3 而它应该只返回 1。看来我的查询返回联合,而它应该返回一个交集。
有人可以帮我修复它吗?