[英]mysql search with multiple keywords touching
$sql ="
SELECT * FROM table
WHERE $email_filter lower(table.synopsis) like '% $search_word_fix %'
OR lower(table.sp_name) like '% $search_word_fix %'
GROUP by table.sp_name
ORDER BY table.grade DESC
";
$re=mysql_query($sql);
因此,我有一个简单的sql查询,例如,如果我搜索2个单词:Hello World,则返回两个单词的结果:hello。 这个单词的结果:world我试图让它返回“ hello word”:where table.field ='$ keyword'我得到:没有结果。 我打开了phpmyadmin,并且我知道有结果。 任何帮助表示赞赏。谢谢
更改=的LIKE,=强制单词绝对
尝试:
$sql ="
SELECT * FROM table
WHERE $email_filter lower(table.synopsis) REGEXP '[[:<:]]$search_word_fix[[:>:]]' = 1
OR lower(table.sp_name) REGEXP '[[:<:]]$search_word_fix[[:>:]]' = 1
GROUP by table.sp_name
ORDER BY table.grade DESC
";
希望能帮助到你
尝试删除该%符号。 所以like查询看起来像
like '$search_word_fix'
WHERE table.field LIKE '%Hello world%'
要么
WHERE table.field LIKE '%Hello%world%'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.