【发布时间】:2013-01-21 12:10:55
【问题描述】:
我有一个包含 2 列的文章表
Id INT(4) PK 自动增量 说明 VARCHAR(250) (以及更多列)此表包含 500.000 条记录,是一个 INNODB 表。 现在我想搜索这样的文章:
SELECT COUNT(*) FROM article(描述如'%cannon%');
执行大约需要一秒钟..
我该怎么做才能加快速度?
我已经在描述列上找到了索引
【问题讨论】:
-
你可以做几件事,一个是给表添加一个主键以确保它可以被正确索引,然后在表上添加索引以加快查询速度.另外,SELECT COUNT(*) FROM article WHERE description LIKE '%cannon%';
-
描述索引没有帮助
-
like '%cannon%'杀死索引。 -
最好的优化是使用
COUNT(1)而不是COUNT(*)。%canon%否定任何其他类型的优化。
标签: mysql