设想一个简单的有两列的表,它有thing_id和ategory_id.是的,它被用作事物和类别之间的多对多连接器,但这并不重要,唯一相关的是我们有这个表ThingCategory,其中有这两列.
我想从ThingCategory中进行 Select ,在给定类别列表的情况下--例如(1,2,6,23)--返回属于这些类别-(1,2,6,23)--或更多类别的所有(不同的)Thing_ID.
我没有找到任何解决这一问题的方法,也没有努力研究如何通过在线和此处搜索,以及与ChatGPT;-)的互动.
我可以想象一下手动构造一个固定集合的查询.在一个级联的子查询列表中,可能类似于以下内容:
SELECT thing_id
FROM ThingCategory
WHERE category_id = 23
(SELECT thing_id
FROM ThingCategory
WHERE category_id = 6
(SELECT thing_id
FROM ThingCategory
WHERE category_id = 2
AND thing_id IN
(SELECT thing_id
FROM ThingCategory
WHERE category_id = 1)))
但是,有没有更干净的方法来编写可以在列表(1、2、6、23)上工作的查询呢?