【发布时间】:2018-11-14 22:28:50
【问题描述】:
我有 2 个类似的数据库,在 2 个服务器上。
如果我尝试一个一个地执行这个请求:
SELECT u.lastname, MATCH (u.lastname) AGAINST ('Rod*' IN BOOLEAN MODE)
FROM user u
WHERE MATCH (u.lastname) AGAINST ('Rod*' IN BOOLEAN MODE) > 0 ;
在第一台服务器上,它给我一个数值作为比赛得分的结果。
一个第二个,我得到了相同的结果,所以真的应用了 where 子句,但分数总是 = 到 0。
你有什么想法吗?我猜它可能是mysql的一个特定的conf......但我不知道要检查哪个。
非常感谢
【问题讨论】:
-
你绝对不应该在 select 和 where 中都匹配。
-
这只是一个例子...如果我想知道他的价值,我需要选择 Match Against。这个请求导致我遇到同样的问题:SELECT u.lastname, MATCH (u.lastname) AGAINST ('Rod*' IN BOOLEAN MODE) as score FROM user u HAVING score > 0
标签: mysql full-text-search full-text-indexing match-against