我有表結構使用單值分隔的列表作爲參數
id| list (VARCHAR)
--|-------
1 | a, b, c
2 | b, c, d
3 | a
我想用單一值從逗號分隔的列表,如其他查詢過濾器。 我以爲我會與查詢實現這個像
SELECT * FROM A WHERE column1 IN (SELECT list FROM B WHERE id = 1)
但這種方式我用值
a, b, c
作爲過濾不是,例如,
a
,我需要一個過濾器。
我該如何做到這一點?
修復你的數據庫結構,所以你不用逗號分隔的字符串存儲列表。 SQL具有存儲列表的很好功能。它被稱爲表格。 –
我不能更改DB結構;) – Miki
什麼數據類型是「List」...設置?如果是這樣的話,你可能需要使用FIND_IN_SET http://dev.mysql.com/doc/refman/5.0/en/set.html或'Like'運算符不是最好的性能,但如果你必須忍受你擁有的。 .. – xQbert