我正在调整我的mysql查询。 架构具有USER_ID的索引(以下..) 但不使用索引。为什么?为什么我的mysql不使用索引?
ENV: MySQL4.0.27,MyISAM数据
SQL如下:
SELECT type,SUM(value_a) A, SUM(value_b) B, SUM(value_c) C
FROM big_record_table
WHERE user_id='<user_id>'
GROUP BY type
解释:
|table |type |possible_keys |key |key_len |ref |rows |Extra|
|big_record_table| ALL| user_id_key|||| 1059756 |Using where; Using temporary; Using filesort|
你可以描述细节?
方案如下:
CREATE TABLE `big_record_table` (
`user_id` int(11) NOT NULL default '0',
`type` enum('type_a','type_b','type_c') NOT NULL default 'type_a',
`value_a` bigint(20) NOT NULL default '0',
`value_b` bigint(20) default NULL,
`value_c` bigint(20) NOT NULL default '0',
KEY `user_id_key` (`user_id`)
) TYPE=MyISAM
你可以张贴'SHOW的输出CREATE TABLE big_record_table'好吗? – 2010-10-20 03:28:38
谢谢回复脱颖而出书面.I've SHOW CREATE TABLE big_record_table – freddiefujiwara 2010-10-20 04:52:09
多少记录已被此查询阅读? – zerkms 2010-10-20 05:05:00