好了,我有這個表稱爲exp_category_posts
這是負責存儲的entry_id
之間的關係和所有它相關的cat_id
S,如表中的行(爲entry_id
一列,爲cat_id
一列)如何在不使用PHP的情況下獲得包含結果集?
對於我正在編寫的搜索插件,用戶可以按類別搜索,並且我想返回所有匹配的條目。
如果我嘗試SELECT entry_id FROM exp_category_posts WHERE cat_id = 1 AND cat_id = 2
我希望獲得一組分配給兩個貓的條目,但是我每次都會得到一個空的結果集。使用OR
不會提供我想要的結果集。
我發現得到我想要的結果的唯一方法是將其打入步驟:
第1步:做每個CAT_ID查詢。
第2步:將結果集保存爲數組。
步驟3:使用幾個in_array()
調用過濾掉不在所有結果集中的條目。
儘管此方法有效,但效率相當低。有什麼辦法可以通過單個查詢來獲得我想要的結果,而不是以這種方式進行?
假設'WHERE cat_id = 1'返回1,2,3,4,5,'WHERE cat_id = 2'返回3,4,5,6,7。我想得到的結果是3,4,5。使用OR而不是AND會返回1,2,3,4,5,6,7,這不是我想要的。 – Jazzerus