我正在从表tablea
中查找与tableb
.
我使用 in 函数IN (1)
来查找与记录 1tablea
相关的记录。我使用该函数是因为括号中的值可能是逗号分隔的列表。tableb
IN
我现在必须做同样的事情,但tablea
记录应该与所有tableb
记录相关,而不仅仅是其中的任何记录,这就是所IN
找到的。
我可以使用什么功能来代替IN
执行此操作?
这是我的查询:
SELECT *
FROM tablea
JOIN tablec ON tablea.id = tablec.id_local
JOIN tableb ON tablec.id_foreign = tableb.id
WHERE
tablea.lang IN ( 0 )
AND tablea.page >=1
AND tablea.page IN ( 8, 9, 10, 11 )
AND tableb.id = 5
ORDER BY tablea.datetime DESC
以上作品,
但tableb.id
现在可能是多个,因为tablea
记录可以与多个记录相关tableb
。
SELECT *
FROM tablea
JOIN tablec ON tablea.id = tablec.id_local
JOIN tableb ON tablec.id_foreign = tableb.id
WHERE
tablea.lang IN ( 0 )
AND tablea.page >=1
AND tablea.page
IN ( 8, 9, 10, 11 )
AND tableb.id IN (5,6,7)
ORDER BY tablea.datetime DESC
这类作品。它会查找tablea
与任何tableb
记录(5、6、7)相关的记录,但是如何更改我的 SQL 以便它找到tablea
与所有tableb
记录(5、6 和 7)相关的记录?