1
我想知道是否有方法可以選擇相關性分數作爲列?所以我可以存儲以供以後操作mysql全文有沒有一種方法來選擇相關性作爲列?
也有任何方法(用於故障排除)來確定爲什麼一行獲得相關性?或什麼詞匹配。例如,當我使用WITH QUERY EXPANSION
時,我得到了結果,我不知道它們爲什麼匹配。
我想知道是否有方法可以選擇相關性分數作爲列?所以我可以存儲以供以後操作mysql全文有沒有一種方法來選擇相關性作爲列?
也有任何方法(用於故障排除)來確定爲什麼一行獲得相關性?或什麼詞匹配。例如,當我使用WITH QUERY EXPANSION
時,我得到了結果,我不知道它們爲什麼匹配。
Re 1)是的。看到examples in the mySQL docs:
mysql> SELECT id, body, MATCH (title,body) AGAINST
-> ('Security implications of running MySQL as root') AS score
-> FROM articles WHERE MATCH (title,body) AGAINST
-> ('Security implications of running MySQL as root');
+----+-------------------------------------+-----------------+
| id | body | score |
+----+-------------------------------------+-----------------+
| 4 | 1. Never run mysqld as root. 2. ... | 1.5219271183014 |
| 6 | When configured properly, MySQL ... | 1.3114095926285 |
+----+-------------------------------------+-----------------+
2 rows in set (0.00 sec)
重新2)不,不我所知。
查看手冊頁上的註釋,有幾個陷阱可以解釋爲什麼在查詢中得到零結果的原因應該是返回更多的結果。
WITH WITH QUERY EXPANSION'通常是無用的,除非你有一個_very_short_句子的集合。您可以使用命令行實用程序'myisam_ftdump'檢查一些權重,但這就像'調試'一樣。 – Wrikken 2010-07-13 23:00:29