简单MySQLselect太费时间

Simple MySQL select taking too much time

我有以下简单查询,但它花费了太多时间(0.5 seconds/half 秒),我找不到原因。我想提高搜索的性能。

标题

VARCHAR (50),排序规则 = latin1_general_ci,允许 NULL,MySQL 引擎:MyISAM

产品table中的记录数:163129

CatID

来自类别 table 的外键 (int)

我已经尝试过这个优化语句


OPTIMIZE table Product

这是简单的查询。


SELECT COUNT(*)
FROM 
Product
WHERE 
CatID=123 
AND Title = 'abc xyz'

请帮忙。提前致谢。

花费更多时间意味着 table 没有正确索引并且可能正在执行完整 table 扫描。

对于这个特定的查询,覆盖索引会很有用

alter table Product add index cat_title_idx(CatID,Title);

确保在应用索引之前对 table 进行备份。