很早之前就听别人说in 不走索引,但是一直没证实过,昨天在工作中用到了in所以在上班的时候突发奇想,使用mysql 的explain 关键字看下一条sql走不走索引,sql 如下所示:

explain SELECT*
FROMlg_order
WHERElogistics_number IN ('03245100007990077','0324510000799007','0323920000077348500001','0329660000077348501001','0322340000799007734','0283920000799009498','132902052979900773485','03215700007998558001','132284314879900s779001','1329080973077348560001','13292709257990077348561001','1321640241777348562s001','1324100421799007734ss8563001','13224702197990077348561','0326200000799007734s86001','1327550457799007767001','132836013379900768001','132760071979900','132249127779900')

如上图所示,这里用到了in,但是这条sql 还是走了索引,如下图:

in索引的说明

后来通过查询网上的文章(如下所示)得知in 不一定不走索引,只有使用索引会导致比不用索引的性能还差则会不走索引,一般这个范围在数据量的百分之三十左右,超过百分之三十就不走索引了
MySQL中in到底走不走索引?_一个技术渣渣的博客-CSDN博客_in走不走索引explain介绍mysql中explain关键字可以模拟MySQL优化器执行SQL语句,是一个可以很好的分析SQL语句或表结构的性能瓶颈。explain的使用方法:explain + sql语句,下面我们先来执行下explain语句EXPLAIN SELECT * FROM `user` WHERE created_time > "2020-03-08";执行结果如下:可以看到有几个返回参数:id、select_type、table、partitions、type、p.https://blog.csdn.net/kevinxxw/article/details/109567275

索引的级别

另外索引是有一定级别的,级别越高性能越好,以下这篇文章有说明:

mysql 查询优化 索引 type级别_陈森森ml的博客-CSDN博客_索引级别mysql查询速度优化这是type级别 越左边 查询速度越快system>const>eq_ref>ref>range>index>ALL怎么样才能让type靠左呢 就是建立索引 最左边的俩级 基本达不到 我们让查询type达到第三级和第四级就很好了 为什么这么说呢?表主键 唯一索引也只能达到 eq_ref 级别的如果不做索引的话 肯定都是ALL了…Type级别解释1.system级别1.只有一条数据的系统表2.或衍生表只能有一条数据的主查询很明显 https://blog.csdn.net/qq_45065975/article/details/107906523

explain 关键字

explain 关键字不懂,参考这篇文章:

MySQL的Explain关键字查看是否使用索引 - 贾树丙 - 博客园explain显示了MySQL如何使用索引来处理select语句以及连接表。可以帮助选择更好的索引和写出更优化的查询语句。简单讲,它的作用就是分析查询性能。 explain关键字的使用方法很简单,就是https://www.cnblogs.com/acm-bingzi/p/mysqlExplain.html

mysql 的 in 不一定不走索引相关推荐

  1. Mysql优化,导致查询不走索引的原因总结

    原文地址:http://blog.csdn.net/m0_37808356/article/details/72526687 最近公司让我做SQL优化的工作(MySql),用explain发了一些问题 ...

  2. MySQL的in条件走不走索引

    答案是:看in后面跟的条件和扫描行的比例 目录 准备条件 鉴定过程 编写查询sql语句,查看执行计划: 这里吧in后面的数据范围变大: 这里测试把后面的条件: a.b换成 demo02.demo03 ...

  3. MySql中的like和in走不走索引

    今天我们来实际操作一下 首先我们创建一个用户表进行测试 Like 在email字段上加一个索引来测试Like关键字 我们先来复习一下Like语句的几种写法 往大的方向说Like语句由两种写法,分别时% ...

  4. mysql内联表格使用索引_【求助】MYSQL表关联内联视图不走索引问题??诡异啊...

    首先声明: FACT_DATE_SALES_CI_INDEX 的DAY,DIM_ORG建有复合索引,同时FACT_DATE_SALES_FACT_DATE_SALES_F1表的RETAIL_SALES ...

  5. MySQL not exists 真的不走索引么?

    在一些业务场景中,会使用NOT EXISTS语句确保返回数据不存在于特定集合,部分同事会发现NOT EXISTS有些场景性能较差,甚至有些网上谣言说"NOT EXISTS不走索引" ...

  6. mysql datetime month不走索引_like百分号加前面一定不走索引吗?一不小心就翻车,关于mysql索引那些容易错的点...

    like百分号加前面一定不走索引吗? 正常来讲,我们都知道在mysql的like查询中,百分号加在关键词后面是走索引的,比如 select * like "张三%",而百分号在前面 ...

  7. 查询没有走索引_关于MySQL种的in函数到底走不走索引、我和同事差点大打出手!...

    " 我是小羊同学,一个兢兢业业的程序员" 背景:有一天同事突然问我为什么加了in查询就突然变慢了.小羊脱口而出:"in不走索引!" 于是就炸开了锅:in不走索引 ...

  8. mysql select不走索引_避免写出不走索引的SQL, MySQL

    在MySQL中,并不是你建立了索引,并且你在SQL中使用到了该列,MySQL就肯定会使用到那些索引的,有一些情况很可能在你不知不觉中,你就"成功的避开了"MySQL的所有索引. 现 ...

  9. mysql in 索引_关于MySQL种的in函数到底走不走索引、我和同事差点大打出手!

    " 我是小羊同学,一个兢兢业业的程序员" 背景:有一天同事突然问我为什么加了in查询就突然变慢了.小羊脱口而出:"in不走索引!" 于是就炸开了锅:in不走索引 ...

最新文章

  1. linux视频教程之进程管理
  2. Html和CSS的关系
  3. 如何做一份出色的竞品分析?(一)
  4. 笔记:用EXCEL计算收益(复利)
  5. 图形系统中的仿射变换
  6. 服务器遭受攻击后,这样排查处理不背锅!
  7. CF741C Arpa’s overnight party and Mehrdad’s si
  8. http端口_PhpStorm 修改默认端口号63342
  9. 作为开发人员,这四类Code Review方法你都知道吗?
  10. 一次Linux服务器***查杀经历
  11. 双向循环链表---仿照linux内核实现
  12. MongoDB 通过 Java 代码 CRUD 数据库与集合
  13. java怎么把程序写入持久化_如何将DataFrame持久化到Hive表?
  14. 地理加权回归简易总结
  15. 排名前三的网址导航站和源码资源站分享
  16. PS2019渐变工具、油漆桶工具、3D材质拖放工具
  17. Illegal instruction 问题处理
  18. QComboBox实现下拉框check勾选
  19. 数制中为什么1代表负号
  20. 教你亲手制作一个虚拟数字人,超全步骤详解

热门文章

  1. 软件工程(五)软件界面设计
  2. 深发展,或有可能的投机机会
  3. 我的外汇交易中心的软件测试
  4. rownum与rowId
  5. 今日头条新闻端和创新项目
  6. 骁龙780G​和骁龙888哪个好 高通骁龙780G​和骁龙888区别参数对比
  7. html5 微场景 特效,基于zepto的微信手机端微场景HTML5页面特效
  8. 安卓中那些 面试官 最爱问的看似简单实则暗藏玄机的问题(一)
  9. 非监督分类ecognition_什么是遥感影像分类?
  10. 彩虹代刷最新版免授权的源码6.7.5