首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >500,000,000条记录,int字段时间戳索引,mysql将处理此查询中的搜索吗?

问500,000,000条记录,int字段时间戳索引,mysql将处理此查询中的搜索吗?
EN

Stack Overflow用户
提问于 2012-09-19 03:56:05
回答 1查看 120关注 0票数 0

假设我有一个包含5亿条记录的MySQL表

它有一个列ts,该列被编入索引,并将时间戳作为值。这样做有效率吗?

select * from table where ts>=time()-24hours

以及过去24小时/周/月/年?

或者我应该选择nosql?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-09-19 04:00:51

我发现,在处理大的日期范围时,MySQL通常会丢弃索引。您的">=",从技术上讲是一个范围(以“now”结尾),可能是优化器的一个例外,因为它应该能够跳到起始点...

如果您有足够的时间来构建这个表,那么可以使用EXPLAIN查看它是否使用了索引。

希望你不需要SELECT *。如果在结果中只需要几个较小的列,也可以将它们放入索引中,这将使MySQL不必从磁盘读取底层较宽的行。

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

https://stackoverflow.com/questions/12484057

复制
相关文章

相似问题

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