使用PHP&amp ;;在超过1个字段中使用多个关键字进行搜索MySQL的

时间:2013-12-30 06:53:42

标签: php mysql search

我希望有一个使用PHP和MySQL的搜索引擎来执行这样的搜索:

我将在表格中的大约3个字段中搜索 bumblebee camaro

我希望结果返回包含两个文本的行(包含 bumblebee camaro ),如果我搜索 bumblebee cam <也会返回相同的结果/ em>的

我使用的是MATCH AGAINST IN BOOLEAN MODE,但结果是记录了 bumblebee ,记录了 bumblebee和camaro

我不希望只有 bumblebee 文本的记录,只有第二个。怎么做?

我的SQL是:MATCH (field1,field2,field3) AGAINST('+bumblebee cam' IN BOOLEAN MODE)

感谢您提前回复!

顺便说一下,我确实尝试拆分关键字,但它没有返回正确的答案,因为不知何故,来自field1的字bumblebee和来自field2的camaro,如果我拆分它。它将显示我不需要的记录

1 个答案:

答案 0 :(得分:1)

MATCH (field1,field2,field3) AGAINST ('bumblebee cam' IN BOOLEAN MODE)

将搜索其中一个单词

MATCH (field1,field2,field3) AGAINST ('+bumblebee +cam' IN BOOLEAN MODE)

会搜索两个单词

MATCH (field1,field2,field3) AGAINST ('-bumblebee  +cam' IN BOOLEAN MODE)

将搜索不带搜索的术语

只需拆分单词并使用+ - |构建它,无论需要什么。

检查文档:http://dev.mysql.com/doc/refman/5.5/en/fulltext-boolean.html