首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >具有频繁MAX()查询的datetime列的MySQL索引?

问具有频繁MAX()查询的datetime列的MySQL索引?
EN

Stack Overflow用户
提问于 2022-05-18 21:21:41
回答 1查看 67关注 0票数 0

我在MySQL 8中有一个SQL查询,用于获取列中的最新日期,以及表中所有记录的计数:

SELECT max(ModificationTimestamp) as lastUpdate, count(*) as total FROM mls_data;

表中大约有300万行,执行该查询几乎需要30秒。

如何使这个查询执行得更快?索引?配置设置?增加InnoDB缓冲区?

EN

回答 1

Stack Overflow用户

发布于 2022-05-19 00:13:02

只需在该列上添加一个索引,MAX()查询就会很快:

代码语言:javascript
复制
create index modificationtimestamp_idx on mls_data(ModificationTimestamp)

但是,您的问题可能是使用count(*),所以使用和不带count(*)进行测试。如果不需要实时结果,您可以执行此操作,并创建一个计划,如果不需要实时结果,则每5分钟更新一次stats表,其中包含count和max。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72296128

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档