我正在使用MySQL。在我的一個表格屬性中,對於一個設備,我有一個序列號說明,如「SM,ST,SK」。MySQL搜索逗號分隔值語法
當用戶輸入SM或ST或SK,我想我的查詢返回的結果
我當前的查詢看起來像這樣:
SELECT CONCAT(lvl1_id,',',lvl2_id)
FROM hier_menus
LEFT JOIN labels ON (hier_menus.id=label_id AND tbl=65 AND fld=2 AND lang_id=5)
WHERE
hm_type=13 AND lvl1_id=141 AND lvl2_id=id AND label='".addslashes($serial)."'";
它是唯一能夠看到第一個逗號部分序列號欄。當用戶輸入ST時,它不會返回任何東西。
是否可以搜索整個長字符串「SM,ST,SK」以返回匹配的行?
和addslashes並不能保證用戶輸入數據的正確轉義 – ajreal