[英]SQL Query to get a row which has comma separated values
我有一個SQL表,其中有這樣的行
--------------------
id promocode
--------------------
1 test,test2
2 test,test3
3 test2,test3
現在,我想選擇“促銷代碼”列中值為“測試”的行。
當我使用
SELECT id from table WHERE promocode LIKE 'test'
它返回所有行,因為所有行中都包含字符串“ test”。 但是我只需要1和2行,因為只有這兩行具有我需要的確切值。 有人可以幫我查詢嗎?
您可以使用函數FIND_IN_SET :
SELECT id from table WHERE FIND_IN_SET('test', promocode) > 0
注意:
將逗號分隔的列表存儲在列中幾乎是自找麻煩。 請考慮規范化數據庫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.