我有以下设置:
现在生病了一系列类别,并且想要显示适合所有类别的表1(例如新闻)中的项目。因此,如果生病了ID 35和ID 36,则连接表中的两个ID都必须有一个条目。
例如:
SELECT *
FROM inserate
INNER JOIN rubrikenZuordnungen ON inserate.ID = rubrikenZuordnungen.InseratID
WHERE
(rubrikenZuordnungen.RubrikID = 35) AND
(rubrikenZuordnungen.RubrikID = 36)
OFFSET 10 ROWS
FETCH NEXT 20 ROWS ONLY
如果我使用它,它就无法正常工作,因为rubrikenZuordnungen
只会得到1个结果。
任何人都可以帮助我吗?提前谢谢。
答案 0 :(得分:2)
这是一种方式。
SELECT *
FROM inserate
WHERE ID IN
(
SELECT InseratID
FROM rubrikenZuordnungen
WHERE RubrikID IN (35,36)
GROUP BY InseratID
HAVING COUNT(DISTINCT RubrikID)=2
)