我正在使用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