gpt4 book ai didi

mysql - 我怎样才能使我的 mysql 更快地每月查询一条记录?

转载 作者:行者123 更新时间:2023-11-29 01:38:03 29 4
gpt4 key购买 nike

我有一个包含大约 300 万条记录的大型数据库,其中的记录包含时间戳。

现在我想每月选择一条记录,它可以使用此查询:

SELECT timestamp, id, gas_used, kwh_used1, kwh_used2 FROM energy 
GROUP BY MONTH(timestamp) ORDER BY timestamp ASC

它可以工作,但速度很慢。

我在 idtimestamp 上有索引。

我该怎么做才能加快查询速度?

最佳答案

GROUP BY MONTH(timestamp) 强制引擎单独查看每条记录,也就是顺序扫描,当您有 3000 万条记录时,这显然非常慢。

一个常见的解决方案是添加一个索引列,其中仅包含您要选择的标准。但是,我高度怀疑如果您的数据库不是每年都重置的话,您实际上会想要选择 Year-Month。

为避免数据损坏问题,最好创建一个自动填充该字段的插入触发器。这样这个额外的列就不会干扰您的业务逻辑。

关于mysql - 我怎样才能使我的 mysql 更快地每月查询一条记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34239730/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com