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

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

作者头像
程序新视界
发布于 2022-05-06 05:41:18
发布于 2022-05-06 05:41:18
4.7K00
代码可运行
举报
文章被收录于专栏:丑胖侠丑胖侠
运行总次数:0
代码可运行

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

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
select * from logs where create_time >= '2020-01-01' ;

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

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

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

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

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

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

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

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
要不要走索引?MySQL 的成本分析
谈到索引失效,大家可能都能列举出几个场景,比如:后模糊查询、条件中带函数、索引中断等等。今天我想和你分享另一个场景:索引成本分析。
杨同学technotes
2022/12/01
5520
MySQL的查询优化(一)
“ 在上一篇关系型数据库之MySQL的文章中,我们介绍了什么是关系型数据库以及MySQL查询优化的大体思路,那今天我们就针对具体的语句来看一下,如何优化MySQL的查询语句。”
每天学Java
2020/06/01
2.1K0
MySQL的查询优化(一)
数据库索引,真的越建越好吗?
索引是提高关系型数据库查询性能的利器,但其并非银弹,必须精通其原理,才能发挥奇效。
JavaEdge
2021/10/18
1.3K0
【入门级教程】MySQL:从零开始的数据库之旅
你是否对数据库充满好奇,却不知从何入手?你是否想学习如何使用MySQL,却苦于找不到合适的入门教程?别担心,这篇博客将带你从零开始,轻松掌握MySQL的基础知识和操作技巧。
千寻简
2024/10/24
5770
【入门级教程】MySQL:从零开始的数据库之旅
一次慢查询暴露的隐蔽的问题
最近解决了一个生产 SQL 慢查询的问题,排查问题之后发现一些比较隐匿且容易忽略的问题。
andyxh
2019/09/10
5590
一次慢查询暴露的隐蔽的问题
​Mysql数据库查询好慢,除了索引,还能因为什么?
mysql查询为什么会慢,关于这个问题,在实际开发经常会遇到,而面试中,也是个高频题。
小白debug
2022/06/20
5540
​Mysql数据库查询好慢,除了索引,还能因为什么?
不要再问我 in,exists 走不走索引了...
最近,有一个业务需求,给我一份数据 A ,把它在数据库 B 中存在,而又比 A 多出的部分算出来。由于数据比较杂乱,我这里简化模型。
烟雨星空
2020/09/01
2K0
不要再问我 in,exists 走不走索引了...
线上500万数据查询时间在37秒,作者将问题解决了,我看到了更大的坑
最近看到一篇文章,讲述了一个500万数据查询37秒的问题和解决方案。我先帮大家总结一下解决方案。
谙忆
2021/12/29
1.5K0
线上500万数据查询时间在37秒,作者将问题解决了,我看到了更大的坑
Cardinality统计取值不准确导致MYSQL选错索引
Non_unique:如果是唯一索引,则值为 0,如果可以有重复值,则值为 1 Key_name:索引名字 Seq_in_index:索引中的列序号,比如联合索引 idx_a_b_c (a,b,c) ,那么三个字段分别对应 1,2,3 Column_name:字段名 Collation:字段在索引中的排序方式,A 表示升序,NULL 表示未排序 Cardinality:索引中不重复记录数量的预估值,该值等会儿会详细讲解 Sub_part:如果是前缀索引,则会显示索引字符的数量;如果是对整列进行索引,则该字段值为 NULL Null:如果列可能包含空值,则该字段为 YES;如果不包含空值,则该字段值为 ’ ’ Index_type:索引类型,包括 BTREE、FULLTEXT、HASH、RTREE 等
友儿
2022/09/11
8480
7种SQL走索引or不走索引的优化,你竟然还不了解?
在传统的系统应用程序中我们通常都会和数据库建立连接进行数据的读写操作,为了减少连接数据库造成的资源消耗于是有了数据库连接缓冲池。在此基础上,SQL 语句的优化对于研发人员也是非常重要的,高效的 SQL 语句经常会给使一个业务逻辑的接口响应速度变得非常快。所以本篇小编将主要从 SQL 语句的优化给出一些建议以及如何使用 SQL 语句里面的关键字等才能使 SQL 的执行效率相对提升,并且分享一份MySQL优化学习笔记,希望给研发人员在编写 SQL 语句时能有一些帮助。
Java程序猿
2021/06/01
7.5K1
原 荐 MySQL-性能优化-索引和查询优化
MySQL-性能优化-索引和查询优化 要知道为什么使用索引,要知道如何去使用好索引,使自己的查询达到最优性能,需要先了解索引的数据结构和磁盘的存取原理 参考博客:MySQL索引背后的数据结构及算法原理
秋日芒草
2018/06/06
7660
Mysql查询条件为大于时,不走索引失效问题排查
我们都知道在数据库查询时,索引可以极大的提高查询效率。通常在使用的时候,都会针对频繁查询的关键字段建立索引。
程序新视界
2022/05/06
3.2K0
Mysql查询条件为大于时,不走索引失效问题排查
15个必知的Mysql索引失效场景,别再踩坑了
无论你是技术大佬,还是刚入行的小白,时不时都会踩到Mysql数据库不走索引的坑。常见的现象就是:明明在字段上添加了索引,但却并未生效。
程序新视界
2022/05/06
25.9K1
15个必知的Mysql索引失效场景,别再踩坑了
MySQL in 太慢的 3 种优化方案
在MySQL中有一个配置参数eq_range_index_dive_limit,它的作用是一个等值查询(比如:in 查询),其等值条件数小于该配置参数,则查询成本分析使用扫描索引树的方式分析,如果大于等于该配置参数,则使用索引统计的方式分析。使用扫描索引树的方式分析在MySQL内部叫做index dives,使用索引统计的方式分析在MySQL内部叫做index statistics。
阿珍
2024/05/30
7250
MySQL秘籍之索引与查询优化实战指南
最左前缀原则。不冗余原则。最大选择性原则。所谓前缀索引,说白了就是对文本的前几个字符建立索引(具体是几个字符在建立索引时去指定),比如以产品名称的前 10 位来建索引,这样建立起来的索引更小,查询效率更快!
千寻简
2025/01/03
1780
MySQL秘籍之索引与查询优化实战指南
MYSQL优化技巧:5 大步骤 + 10 个案例
虽然上至下,效率越来越高,但是根据cost模型,假设有两个索引idx1(a, b, c),idx2(a, c),SQL为select * from t where a = 1 and b in (1, 2) order by c;如果走idx1,那么是type为range,如果走idx2,那么type是ref;当需要扫描的行数,使用idx2大约是idx1的5倍以上时,会用idx1,否则会用idx2
小明互联网技术分享社区
2022/05/24
5840
MYSQL优化技巧:5 大步骤 + 10 个案例
MySQL索引原理以及查询优化「建议收藏」
一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,在生产环境中,我们遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,因此对查询语句的优化显然是重中之重。说起加速查询,就不得不提到索引了。
全栈程序员站长
2022/07/21
4760
MySQL索引原理以及查询优化「建议收藏」
面试官问如何优化慢SQL?
---- 文章来源:https://c1n.cn/tEsnA 前言 在应用开发的早期,数据量少,开发人员开发功能时更重视功能上的实现,随着生产数据的增长,很多 SQL 语句开始暴露出性能问题,对生产的影响也越来越大,有时可能这些有问题的 SQL 就是整个系统性能的瓶颈。 SQL 优化一般步骤 | 通过慢查日志等定位那些执行效率较低的 SQL 语句 | explain 分析SQL的执行计划 需要重点关注 type、rows、filtered、extra。 type 由上至下,效率越来越高: ALL 全表扫描
java思维导图
2022/03/31
8760
面试官问如何优化慢SQL?
SQL优化场景+案例
在应用开发的早期,数据量少,开发人员开发功能时更重视功能上的实现,随着生产数据的增长,很多SQL语句开始暴露出性能问题,对生产的影响也越来越大,有时可能这些有问题的SQL就是整个系统性能的瓶颈。
朱小五
2021/05/07
5110
SQL优化思路+经典案例分析
SQL调优这块呢,大厂面试必问的。最近金九银十嘛,所以整理了SQL的调优思路,并且附几个经典案例分析。
捡田螺的小男孩
2023/02/24
9340
SQL优化思路+经典案例分析
推荐阅读
相关推荐
要不要走索引?MySQL 的成本分析
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文