0

我有一张简化照片 ID标签 ID的表格。而且我最近注意到,当我使用 MATCH AGAINST 命令时,它不会返回所有合适的匹配项。即使有时两行包含经过测试的完全相同的文本,但仍然有一个被选中,而另一个没有。

这是一张名为照片的表格

  id             | type | size    | tag                                                                  |
+----------------+------+---------+----------------------------------------------------------------------+
| IMG_1485197299 | jpg  | 1400000 | ImgTg_0000000000                                                     |
| IMG_1485429476 | jpg  |       0 | ImgTg_1485195510 ImgTg_1485195592 ImgTg_1485195621 ImgTg_1486234725  |
| IMG_1485429627 | jpg  |       0 | ImgTg_1485195510 ImgTg_1485195621 ImgTg_1485195592                   |
| IMG_1485429660 | jpg  |       0 | ImgTg_1485195510 ImgTg_1485195621 ImgTg_1485195592                   |
| IMG_1485429669 | jpg  |       0 | ImgTg_1485195510 ImgTg_1485195621 ImgTg_1485195592                   |
| IMG_1485429681 | jpg  |       0 | ImgTg_1485195592                                                     |
| IMG_1485429687 | jpg  |       0 | ImgTg_1486234725                                                     |
| IMG_1485429695 | jpg  |       0 | ImgTg_1485195621 ImgTg_1485195510                                    |
| IMG_1485429704 | jpg  |       0 | ImgTg_0000000000 ImgTg_1486234725                                    |
| IMG_1485429710 | jpg  |       0 | ImgTg_1485195510                                                     |
| IMG_1485429718 | jpg  |       0 | ImgTg_1485195510                                                     |
| IMG_1485433986 | jpg  |       0 | ImgTg_1485195510 ImgTg_1485195592                                    |
| IMG_1485433993 | jpg  |       0 | ImgTg_1485195510 ImgTg_1485195592                                    |
| IMG_1486234762 | png  |  143306 | ImgTg_1486234725                                                     |

这是我正在使用的命令:

SELECT * FROM photos WHERE MATCH(tag) AGAINST('+ImgTg_1486234725 ' IN BOOLEAN MODE);

并且它在大多数表格中都可以正常工作,但由于某种原因,它无法正常工作,尤其是在最后一行。返回:

+----------------+------+------+-------------------+
| id             | type | size | tag               |
+----------------+------+------+-------------------+
| IMG_1485429687 | jpg  |    0 | ImgTg_1486234725  |
+----------------+------+------+-------------------+

注意:如果我尝试将其更改tag为不同的id,它会起作用!但有些ids根本行不通

我应该怎么办?

4

1 回答 1

0

谢谢大家的帮助,我从昨天开始就一直在尝试解决这个谜语,但是我在发布问题后才发现我犯的错误:D

我正在使用某种latin排序规则,然后将其更改为utf8_bin,现在它可以正常工作了!

于 2017-02-05T17:19:44.743 回答