2
搜索多個列和多值選擇行我有這個表通過在MySQL
file_id cat_1 cat_2 cat_3
cat1
,cat2
,cat3
所有包含類別ID。
我要選擇存在於cat1
或cat2
或cat3
簡單查詢文件是:
SELECT file_id FROM files WHERE
cat_1 IN (1,2,3,4,5)
OR cat_2 IN (1,2,3,4,5)
OR cat_3 IN (1,2,3,4,5)
是沒有什麼更好的辦法來做到這一點?例如把所有列放入另一個列表中?
WHERE (cat_1,cat_2,cat_3) IN (1,2,3,4,5) ?
有一種更好的方式來做到這一點。它被稱爲標準化數據,所以你有一個聯結表,每個類別和文件有一行。 –