php如何查询一个字符串和一个数组字段里的值匹配的sql查询
如果是直接查询 pt=$rpt 的记录是这样
$sql = select * from 'user' where pt = {$rpt};
现在 pt 这个字段是个数组,比如有3条记录分别为
id   pt
1    aaaaa,bbbbb,ccccc,ddddd
2    www,zzz,vvv,qqq
3    ooo,pppp,lllll,ddd
现在假如 rpt=ddd ,我想查出 pt 里有 ddd 的记录,那么应该是id为 3 的那条记录,即完全匹配的。而不是1,和3两条记录。
请问这个sql该怎么写 ?
------解决方案--------------------
','+pt+',' like '%,$rpt,%'
------解决方案--------------------
... where find_in_set('$rpt', pt)
------解决方案--------------------
不知道对不对 。。
lz试试?
php code/* 根据楼主数据内容 * 应该都是用某个特定分隔符分开的 */$sql = select * from 'user' where pt = {$rpt};$result = mysql_query($sql);   while($row = mysql_fetch_array($result)){  $arr = explode(',',$row['pt'])  foreach($arr as $v)  {   if($v == {$rpt})   {    echo $v;   }  }}
------解决方案--------------------
探讨
引用:
... where find_in_set('$rpt', pt)
这样不对吧,那只要包含 rpt 的都匹配出来了
我是想查出完全匹配的
   
 
   