mysql SELECT LIKE必须匹配整个单词

时间:2017-09-09 05:25:58

标签: php mysql

有没有办法让这项工作成功。我在Stack上尝试了几个例子,但是当我在下面的代码中实现它时,我遇到了错误。

我曾试图使用REGEXP '[[:<:]]$query[[:>:]]',但我却意外地发现了#34; [&#34;错误。我不太了解php / sql来解决这个问题......

$raw_results = mysql_query("SELECT * FROM wp_posts
WHERE (`post_title` LIKE '%".$query."%' AND `post_title` LIKE '%".$query2."%') 
OR (`post_content` LIKE '%".$query."%' AND `post_content` LIKE '%".$query2."%') 
OR (`guid` LIKE '%".$query."%' AND `guid` LIKE '%".$query2."%')") or 
die(mysql_error());

编辑: 对不起,我要添加一些东西。 post_content中有一个不止一个单词的文本。但我想在post_content列中搜索整个文本中的搜索词。当post_content列中的文字是&#34;我有一个乐队和一个品牌&#34;我不想得到像&#34; band&#34;和&#34;品牌&#34;。

1 个答案:

答案 0 :(得分:-1)

可以是:

$raw_results = mysql_query("SELECT * FROM wp_posts
WHERE (`post_title` LIKE '".$query."' AND `post_title` LIKE '".$query2."') 
OR (`post_content` LIKE '".$query."' AND `post_content` LIKE '".$query2."') 
OR (`guid` LIKE '".$query."' AND `guid` LIKE '".$query2."')") or 
die(mysql_error());