【发布时间】:2015-09-03 08:02:23
【问题描述】:
我试图优化我的 MySQL 查询,但发现我实际上做错了。我已将查询更改为使用
SELECT * FROM test WHERE tst_title LIKE '1%'
收件人:
SELECT * FROM `test` WHERE MATCH(tst_title) AGAINST("+1*" IN BOOLEAN MODE)
FULLTEXT 的运行时间很糟糕。请看下面的内容:
使用喜欢:
Showing rows 0 - 24 (1960 total, Query took 0.0004 sec)
使用全文:
Showing rows 0 - 24 (1960 total, Query took 0.0033 sec)
我阅读了许多教程,其中解释了为什么应该使用 FULLTEXT(因为这实际上是按索引搜索)。但是,这会是一种较慢的方式来检索数据,然后是 LIKE 语句(因为 LIKE 语句必须遍历每条记录才能返回它们的有效性)?
我真的不明白为什么会发生这种情况.. 优化方面的帮助会很受欢迎!
【问题讨论】:
-
您可以参考帖子以获得一些想法>> dba.stackexchange.com/questions/15214/…
-
@Mathew 谢谢你的链接
标签: mysql sql performance optimization phpmyadmin