MYSQL - 匹配分数值 = 0,但在 WHERE 子句中为 >0



我在 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 的特定会议......但我不知道该检查哪一个。

非常感谢

从派生表中进行选择:

SELECT lastname, score FROM (
SELECT u.lastname, MATCH (u.lastname) AGAINST ('Rod*' IN BOOLEAN MODE) AS score 
FROM user u 
) as derivedTable WHERE score <> 0 ORDER BY score DESC;

相关内容

  • 没有找到相关文章

最新更新