【发布时间】:2021-06-01 08:28:18
【问题描述】:
我有一个有 700, 000 行的表。一列称为“数据”是文本类型。我在此列上添加全文索引以提高查询速度。
这里有两个查询,第二个没有按预期返回。
您可以看到第一个查询返回一个带有我指定的关键字的结果。 花了 2 秒
我认为第二个查询应该运行得更快,因为我提供了更多过滤条件。但这需要大约一分钟。
提供更多条件应该缩小要搜索的数据集,为什么会变慢?
MYSQL 版本是 8.0.16 引擎是 InnoDB。对不起马赛克
【问题讨论】:
-
查询返回您所要求的内容。不是你想要的。您需要文字而不是全文匹配,因此要搜索的子字符串必须用双引号字符括起来。测试
+"i-uf16..."。 -
嗨@Akina 谢谢。我按照你说的方法做了,运行正常,但是速度很慢。因为更多的条件意味着更小的搜索范围,所以它不是更快吗?我修改了问题。能帮忙再查一下吗?
标签: mysql full-text-search full-text-indexing