MySQL搜索中的空间

时间:2011-03-25 21:54:23

标签: mysql search

我的查询是这样制定的:

$sql = "SELECT name, id FROM table WHERE MATCH (name) AGAINST ('".$query."*' IN BOOLEAN MODE) LIMIT 0,10";

所以搜索tom检索:

Tom Anderson   |   1
Tom Bennet     |   2
Tom Cane       |   3

但是,如果我搜索tom anderson,则查询将编译为:

 ...MATCH (name) AGAINST ('tom anderson*' IN BOOLEAN MODE)...

返回相同的结果集(我只想要第一个)。我该如何更改查询?

1 个答案:

答案 0 :(得分:1)

您应该使用+表示必须出现的字词,或使用"表示完整的字词

检查布尔值mode manual

我想这会工作

 ...MATCH (name) AGAINST ('"tom anderson"*' IN BOOLEAN MODE)...