美文网首页技术学习
MySQL中IN是否走索引

MySQL中IN是否走索引

作者: JurlyL | 来源:发表于2019-08-28 23:57 被阅读0次

在看高性能mysql一书过程中偶尔看到这样一段话


image.png

讲到in语句和between语句在explain的解释中都是范围查询,但其实是相当不同的访问类型。
于是想到一直不太明白的in语句究竟会不会走索引的问题。
在网上找了一些文章,也问了同事,有的说会,有的说不会,所以自己动手实践了一下。


image.png
image.png

线下购买占总数据行的大概百分之70左右。
当然也测试了in中只有线下购买,或者只有线下购买和支付宝这些情况,得出的结果如下:

当SQL优化器解析到in范围内的数据量超过一定程度时候,就不会走索引,改走全表扫描

相关文章

  • MySQL中IN是否走索引

    在看高性能mysql一书过程中偶尔看到这样一段话 讲到in语句和between语句在explain的解释中都是范围...

  • MySQL8.0-隐藏索引(Invisible Indexes)

    本文问题 隐藏索引有什么特点? 如何隐藏索引? 如何查询索引是否隐藏? 如何控制优化器是否使用隐藏索引 MySQL...

  • MySQL索引背后的数据结构及算法原理

    参考来源 mysql索引分析 MySQL索引背后的数据结构及算法原理 MySQL中EXPLAIN命令详解 索引连接...

  • 20、MySQL 索引类型有哪些?

    MySQL 索引类型有哪些? 主键索引 索引列中的值必须是唯一的,不允许有空值。 普通索引 MySQL中基本索引类...

  • mysql order by 排序

    mysql order by 排序 索引排序 参考 order by 字段上上有索引可能就会用上索引排序,是否应用...

  • 索引

    MYSQL索引 MYSQL中索引文件以B树结构存储,索引可分为单列索引和多列索引。 对于多列索引中,当一个SQL语...

  • 索引

    mysql中的索引 MySQL中普遍使用B+Tree做索引,但在实现上又根据聚簇索引和非聚簇索引而不同。 聚簇索引...

  • Mysql之索引的基本概念语法

    1.Mysql中索引的概念 MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检...

  • 4. Mysql技术内幕-索引和算法

    索引和算法 索引概述 B+索引 全文索引 哈希索引: mysql支持的hash索引是自适应的,不能认为干预是否在一...

  • mysql的索引呢?你又知道多少?

    mysql的索引呢?你又知道多少? 在Java面试中必问mysql,问mysql的时候索引也是必问,可见索引有多么...

网友评论

    本文标题:MySQL中IN是否走索引

    本文链接:https://www.haomeiwen.com/subject/mcavectx.html