为什么这两个MySQL查询返回不同的结果

为什么这两个MySQL查询返回不同的结果,mysql,Mysql,我正在运行一个MySQL查询来搜索数据库中的作业。我正在使用匹配和反对,以便能够排序结果的相关性。 但是,我不明白为什么这两个查询返回不同的结果: SELECT SQL_CALC_FOUND_ROWS *, MATCH (`title`) AGAINST ("assistant") AS Relevance FROM jobs2 WHERE MATCH (`title`)

我正在运行一个MySQL查询来搜索数据库中的作业。我正在使用匹配和反对,以便能够排序结果的相关性。 但是,我不明白为什么这两个查询返回不同的结果:

SELECT SQL_CALC_FOUND_ROWS *, MATCH (`title`) 
            AGAINST ("assistant") 
            AS Relevance 
            FROM jobs2 
            WHERE MATCH (`title`) 
            AGAINST ("assistant") AND date  >= CURDATE() - INTERVAL 28 DAY GROUP BY jobref ORDER BY Relevance DESC LIMIT 0,50
据我所知,它将默认为自然语言模式,但返回0个结果,而:

SELECT SQL_CALC_FOUND_ROWS *, MATCH (`title`) 
            AGAINST ("assistant" IN BOOLEAN MODE) 
            AS Relevance 
            FROM jobs2 
            WHERE MATCH (`title`) 
            AGAINST ("assistant" IN BOOLEAN MODE) AND date  >= CURDATE() - INTERVAL 28 DAY GROUP BY jobref ORDER BY Relevance DESC LIMIT 0,50
按预期返回4个结果,但相关性始终为1,因此实际上不可能按相关性排序

my DB有以下测试任务:

|date               |title                                                          |jobref|

|2016-04-08 07:21:19|Assistant Management Accountant                                |12345 |
|2016-04-08 07:21:19|Assistant Accountant                                           |12346 |
|2016-04-08 07:19:15|Assistant Finance Manager                                      |12347 |
|2016-04-08 07:20:38|Accounts Assistant / Purchase Ledger Clerk / Accounts Payable  |12348 |

基本上,为什么自然语言模式返回0个结果?

来自MySQL自然语言搜索文档:

此外,在50%或更多行中出现的单词是 被认为是普通的,不匹配


看起来您的样本数据超过了50%的匹配率。

啊,谢谢您-我想没有办法解决这个问题?