mysql性能索引
我永远不会理解mysql索引的正确用法。在我读过的每一篇文章和文档中,他们都在谈论简单的索引。 我有以下疑问:mysql性能索引,mysql,indexing,Mysql,Indexing,我永远不会理解mysql索引的正确用法。在我读过的每一篇文章和文档中,他们都在谈论简单的索引。 我有以下疑问: SELECT COUNT(sid),f_partner,COUNT(DISTINCT(cid)) FROM sal_forwarding WHERE forwardDate BETWEEN "2011-06-01" AND "2011-06-30" GROUP BY f_partner 读取数据需要2分钟:( 该表有140万个数据行 下面是解释结果: id select_type
SELECT COUNT(sid),f_partner,COUNT(DISTINCT(cid)) FROM sal_forwarding WHERE
forwardDate BETWEEN "2011-06-01" AND "2011-06-30" GROUP BY f_partner
读取数据需要2分钟:(
该表有140万个数据行
下面是解释结果:
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE sal_forwarding index forwardDate,forwardDate_2,forwardDate_3 f_partner 25 (NULL) 1416282 Using where
我的索引是(f_partner,forwardDate)。
提高性能的正确解决方案是什么
f_partner = varchar(20)
forwardDate = Date
非常感谢。索引应该是(forwardDate,f_partner)-首先满足where子句,然后分组-回答了我所有与MySQL索引相关的问题。-整个网站致力于索引,而不仅仅是简单的案例。