mysql - 为什么这个 MYSQL 全文搜索没有给出分数?
问题描述
我有一个这样的记录,在一个表(squirrel_users
)中,它有一个全文索引email
。
+-----------+----------------------------+
| record_id | email |
+-----------+----------------------------+
| 7065 | s.j.e.hennessyexample.com |
+-----------+----------------------------+
但是,如果我在电子邮件上进行 MATCH,在布尔模式下,我不会得到分数:
mysql> SELECT record_id, email,
(MATCH (email) AGAINST ("+s.j.e.hennessyexample.com" IN BOOLEAN MODE)) AS score
FROM squirrel_users
WHERE record_id = 7065 ORDER BY score DESC;
+-----------+----------------------------+-------+
| record_id | email | score |
+-----------+----------------------------+-------+
| 7065 | s.j.e.hennessyexample.com | 0 |
+-----------+----------------------------+-------+
谁能看到为什么这里的分数为零,我在哪里+<exact saved data>
?这可能与句号有关吗?
啊哈-如果我用引号括住这个词,那么它就可以工作:
mysql> SELECT record_id, email,
(MATCH (email) AGAINST ("+\"s.j.e.hennessyexample.com\"" IN BOOLEAN MODE)) AS score
FROM squirrel_users
WHERE record_id = 7065 ORDER BY score DESC;
+-----------+----------------------------+--------------------+
| record_id | email | score |
+-----------+----------------------------+--------------------+
| 7065 | s.j.e.hennessyexample.com | 25.576061248779297 |
+-----------+----------------------------+--------------------+
1 row in set (0.00 sec)
那么句号会发生什么 - 他们是否将其分解以便将其视为单独的单词?