前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Mysql时间范围查询不走索引问题

Mysql时间范围查询不走索引问题

作者头像
程序新视界
发布2022-05-06 13:41:18
4.4K0
发布2022-05-06 13:41:18
举报
文章被收录于专栏:丑胖侠

使用Mysql进行数据查询时,如果在SQL语句中出现范围查询,类似如下语句:

代码语言:javascript
复制
select * from logs where create_time >= '2020-01-01' ;

此时,虽然在create_time字段上添加了索引,但是否会走索引还需要看数据量的情况。

如果根据查询条件查询到数据的结果数量小于总数量的五分之一,则会走索引,否则会走全表扫描。

因此,在进行范围查询时,比如>、< 、>=、<=等,如果数据量过大的话where语句的条件虽然添加了索引,但也有可能会进行全表扫描。所以,在查询时查询的范围要考虑进行限制或其他方式进行拆分。

当然,上面的五分之一只是一个大概的临界值,不同的场景,不同的数据量,该值可能会更小,比如10%以下。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-02-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档