你好,我正在研究一个项目,只有当它包含数组的任何值时我才需要选择该字段
我的意思是
我有一个像(逗号分隔)
的字符串 $string =1,2,3,4,5,7;
我有一个数据库,其中包含表格wtth值,如
1,9 // this is one of the field which conatins the id of people who should be notified
现在我想选择包含字符串中任何值的所有字段,如
如果字符串类似
$string =1,7;
和
field contains 1,8
filed2 contains 9,88
field3 contains 2,5,6,7,8
然后只选择1和3个filds
我试过这个
select aid,a.cid,tdid,fdid,mcat,sub,a.mess,attach,prio,sdate,edate,stime,etime,a.date,d.name,d.photo,c.curl,c.cname
from activity a,dept d,enter c where
((CONCAT(",", tdid, ",") REGEXP ",('.implode("|",$arr).'),") and tdid=d.did and d.acid=c.cid)
$mydeptslist=1,8
$arr=array($mydeptslist);
即使值匹配,此代码也会选择任何内容..请建议我别的...... 我有一个动态字符串..
答案 0 :(得分:0)
MySQL函数find_in_set()只能搜索一组字符串中的一个字符串。你可以尝试这样的事情
find_in_set('1',comma_sep_field_name) OR find_in_set('7', comma_sep_field_name)