1
私はジョブのDBを検索するMySQLクエリを実行しています。私は結果を関連性のあるものにするためにMATCHとAGAINSTを使用しています。 しかし私は、これら2つのクエリは異なる結果を返す理由として困惑している:これら2つの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であるため、関連性による注文は実際には可能ではありませんか?
私の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結果を返す自然言語モードがありますか?
ああありがとう - 私はこれを回避する方法はないと思いますか? – rpsep2