我有三張表。避免帶查詢的MySql循環
表1是包裝。 表2是package_to_keyword。 表3是關鍵字。
軟件包可以連接到多個關鍵字。因此,如果我查詢package_to_keyword加入關鍵字和包,我可以搜索與特定關鍵字相關的所有包。這是我理解的部分。
現在......我的問題是,如何檢索匹配關鍵字列表的軟件包?現在,在PHP中,我循環一條sql語句,然後遍歷每個關鍵字的所有結果,並執行array_intersect()過濾到所有結果集中顯示的包。不過,我敢肯定這是不好的,因爲我對每個關鍵字運行查詢時,我確定SQL是用來處理這種類型的關係,我只是不確定執行什麼類型的查詢。
關鍵是關鍵字列表可以是任意數量的單詞。如果我使用IN('關鍵字','數組','返回','全部','結果'),我只是得到一個列表,所有與有關係的包都是想要與有關係的包全部的關鍵字。
想法?
不錯,你糾正了這個答案,就像我正要-1它;)+1現在代替。 – MatBailie