MySQL的in查询不走索引?我拿什么拯救你!.doc





《MySQL的in查询不走索引?我拿什么拯救你!.doc》由会员分享,可在线阅读,更多相关《MySQL的in查询不走索引?我拿什么拯救你!.doc(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1MySQL 的的 in 查询不走索引?我拿什么拯救查询不走索引?我拿什么拯救你!你!为什么写这篇文章呢?因为我不想让大家在错误下去!昨天 CSDN 正在进行一个 2018 年的博客之星活动,入围了 200 名的博客专家!大家正在讨论说 2018 年博客之星页面有 bug 的问题时,有一位网友发了一张图片,一条 SQL 查询有问题。于是下面就有几个回答说 MySQL 查询 in 是不走索引的!哇,我惊呆了。这种话都出来了!我想证明我是错的,于是我到网上搜索了非常多的文章,什么 MySQL 优化实战,MySQL 军规 36 条,30 条 SQL 优化军规,SQL 语句优化原则,mysql 语句优
2、化建议,数据库查询优化方法总结等等有非常多的文章在描述,MySQL 中 in 查询不走索引。这些文章当中有些是 2018 年才发出来的,完全属于误导读者。今天我们一起来看看 MySQL 的 in 查询到底走不走索引?首先说一下,我的测试环境:MySQL 版本:SELECT VERSION();mdash;5.6.28-cdb2016-log存储引擎:innodb2一些基本配置,我就不贴了,对于我们这个问题影响的不大。使用 desc xttblog;名称查看一下表结构。我就不贴图了,直接给大家贴上建表语句。然后循环插入 100 万条测试数据。首先我们看一下无索引的情况,xttblog 表中的 n
3、ame 值已经非常的散了。查询时间 0.55 秒左右。我们在查一下 xttblog 表中的 status in 的情况,耗时 17 秒左右。通过 EXPLAIN 对上面两条查询语句进行分析(不懂 EXPLAIN 的可以看我的这篇文章拜托别在问我 MySQL 性能优化了!),它们都没有走索引。name 的值因为更分散,查询速度更快。再来看看有索引的情况下,in 的执行效率。我们的主键 id 是一个索引,上面语句的查询耗时 0.02 秒左右。3为了比较,我们再给 xttblog 表的 name 字段加上索引。然后执行下面的查询:当 name 字段添加了索引后,in 查询耗时 0.02 毫秒左右。E
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MySQL in 查询 索引 什么 拯救

限制150内