У меня есть полнотекстовый индексированный столбец Mysql Innodb с именем name.Если я выполняю логический поиск точного имени записи, я получаю гораздо более высокий балл, если я не ставлю перед +
перед поисковым термином.Кто-нибудь может объяснить это?Я ожидаю, что это будет то же самое, так как это случай "предпочитаю, чтобы это" против "должно иметь это".
mysql> SELECT record_id, name, "abcde" as search_term,
MATCH (name) AGAINST ("abcde" IN BOOLEAN MODE) AS score_without_plus,
MATCH (name) AGAINST ("+abcde" IN BOOLEAN MODE) AS score_with_plus
FROM my_tablename WHERE record_id = 16;
+-----------+-------+-------------+--------------------+-----------------------+
| record_id | name | search_term | score_without_plus | score_with_plus |
+-----------+-------+-------------+--------------------+-----------------------+
| 16 | abcde | abcde | 4.034474849700928 | 0.0016093916492536664 |
+-----------+-------+-------------+--------------------+-----------------------+
Версия без +
получает более 2500x балл,что кажется сумасшедшимКто-нибудь может объяснить, что здесь происходит?