我最近一直在尝试全文搜索,并对 Score 值的含义感到好奇。例如,我有以下查询:
SELECT table. * ,
MATCH (
col1, col2, col3
)
AGAINST (
'+(Term1) +(Term1)'
) AS Score
FROM table
WHERE MATCH (
col1, col2, col3
)
AGAINST (
'+(Term1) +(Term1)'
)
在 Score 的结果中,我看到一个查询的结果在 0.4667041301727 到 11.166275978088 之间。我知道这是 MySQL 的相关性概念(权重越高)。
我不明白 MySQL 是如何得出这个分数的。为什么数字不作为小数或其他东西返回?
如果我运行查询“IN BOOLEAN MODE”,分数总是返回 1 还是 0 怎么办?不是所有的结果都是1吗?
只是希望得到一些启示。谢谢。