如果是直接查询 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该怎么写 ?
$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该怎么写 ?
我是想查出完全匹配的
LZ试试?
/* 根据楼主数据内容
* 应该都是用某个特定分隔符分开的
*/
$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;
}
}
}
这是对的,mysql文档说这种方式更快,你至少试试再说