我将复选框值作为逗号分隔值存储在数据库中
Features
1,3,4
1,2,3,4,5
3,4,5,6
现在,在搜索时,我需要根据用户选择复选框来选择记录,例如,如果用户选择 1 和 6
需要获取匹配的记录。我将选定的复选框值作为数组获取,如 (0=>1,1=>6)
。我不知道如何像 FIND_IN_SET(1,Features) OR FIND_IN_SET(6,Features)
它必须像
SELECT * FROM table WHERE FIND_IN_SET(1,Features) OR FIND_IN_SET(6,Features)
最佳答案
$str='%';
foreach($array as $val)
{$str.=$val.'%';}
SELECT * FROM table WHERE Features like $str
更新:
$str='';
foreach($array as $val)
{$str.='or Feature like %'.$val.'%';}
$str[0]='';$str[1]='';
SELECT * FROM table WHERE $str
关于mysql - 使用 FIND_IN_SET 选择记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11406655/