繁体   English   中英

如何优化此选择查询? (MySQL)

[英]how to optimize this select query? (MySQL)

我一直在研究mysql数据库,拥有数据库的最重要的表之一将是900到10亿条记录。 我能够执行以下查询:

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

您需要创建复合索引variable_VAR_ID + SEN_ID

注1:不是两个分离的索引,而是一个复合索引
注意2:是的,顺序很重要

PS:这是有关如何创建索引的语法说明: http : //dev.mysql.com/doc/refman/5.5/en/create-index.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM