我一直在研究mysql数据库,而拥有DataBase的最重要的表之一将是900到1000万条记录。我能够做这个查询:
select MAX(SEN_ID) as SEN_ID from senal group by variable_VAR_ID
但需要12分钟。如何优化此查询?
当数据库很小时,这个查询工作正常,但是现在数据库中有数百万行,我意识到我应该先考虑优化它。
在EXPLAIN中执行的查询显示:
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE senal index NULL fk_senal_variable1 4 NULL 6333242 Using index
答案 0 :(得分:1)
您需要创建复合索引variable_VAR_ID + SEN_ID
注1:不是两个分开的索引,而是一个复合词 注2:是的,订单很重要
PS:这是关于如何创建索引的语法描述:http://dev.mysql.com/doc/refman/5.5/en/create-index.html