1
我在表tablea
中找到與tableb
中的記錄相關的記錄。
我使用函數IN (1)
來查找tablea
與tableb
記錄1相關的記錄。我使用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以使其找到與所有tableb
記錄(5,6和7)相關的記錄tablea
?
能否請您發表您的當前查詢,並指出需要的字段現在匹配? –
我想我現在迷路了,你介意給一些功能細節嗎?我認爲你加入了兩張桌子,但我不確定。爲了調查我需要知道你真的在做什麼,例如這些數字是什麼 – Sebas