文档章节

mysql不走索引总结

messud4312
 messud4312
发布于 2017/08/29 17:08
字数 288
阅读 191
收藏 0

MySQL查询语句中,总会发现明明已经建立了查询字段索引,可是却没有用到,这是因为在mysql中有些查询语句是用不到索引的,总结如下,以供大家分享。

  1. like语句,‘%w’不会使用索引,‘w%’会使用索引
  2. 列类型为字符串类型,查询时没有用单引号引起来
  3. 在where查询语句中使用表达式
  4. 在where查询语句中对字段进行NULL值判断
  5. 在where查询中使用了or关键字, myisam表能用到索引, innodb不行;(用UNION替换OR,可以使用索引)
  6. where中复合索引未按顺序查询的
  7. 如果mysql估计使用全表扫描要比使用索引快,则不使用索引(数据量小时 or 索引数据量大于20%的)

 

查询某张表中已经建立的索引:

show index from tablename

查看索引的使用情况:
show status like ‘Handler_read%';
大家可以注意:
handler_read_key:这个值越高越好,越高表示使用索引查询到的次数
handler_read_rnd_next:这个值越高,说明查询低效

© 著作权归作者所有

messud4312
粉丝 6
博文 153
码字总数 115258
作品 0
海淀
后端工程师
私信 提问
mysql优化实战(explain&&索引)

实验环境: 1、sql工具:Navicat 2、sql数据库,使用openstack数据库作为示例 一、mysql索引查询 show index from instances 结果字段解释: vcmRlcj0="1" cellpadding="2" cellspacing="0"......

wmy596
2016/06/12
133
0
mysql数据库sql优化原则

这里的原则 只是针对mysql数据库,其他的数据库 某些是殊途同归,某些还是存在差异。我总结的也是mysql普遍的规则,对于某些特殊情况得特殊对待。在构造sql语句的时候养成良好的习惯 原则1、...

rin9958
2016/06/27
105
1
我的MySQL数据库SQL优化原则

一、前提 这里的原则只是针对MySQL数据库,其他的数据库某些是殊途同归,某些还是存在差异。我总结的也是MySQL普遍的规则,对于某些特殊情况得特殊对待。在构造SQL语句的时候要养成良好的习惯...

凯文加内特
2014/02/11
105
0
Mysql中哪些sql 不会走索引

索引列参与了计算 SELECT FROM WHERE +10=30; 2. 索引使用了函数运算 SELECT FROM WHERE LEFT(,4) <1990; 3. like SELECT * FROM houdunwang WHERE uname LIKE'后盾%' -- 走索引 SELECT * F......

ChyiHuang
2018/09/25
24
3
mysql 索引和 Like查询

带有like的sql语句是否会触发索引? like '%1999-12-15%'; 不会触发 like '%1999-12-15'; 不会触发 like '1999-12-15%'; 会触发 1. like %keyword 索引失效,使用全表扫描。但可以通过翻转函数......

灯下草虫鸣_
2018/07/23
15
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring使用ThreadPoolTaskExecutor自定义线程池及实现异步调用

多线程一直是工作或面试过程中的高频知识点,今天给大家分享一下使用 ThreadPoolTaskExecutor 来自定义线程池和实现异步调用多线程。 一、ThreadPoolTaskExecutor 本文采用 Executors 的工厂...

CREATE_17
今天
5
0
CSS盒子模型

CSS盒子模型 组成: content --> padding --> border --> margin 像现实生活中的快递: 物品 --> 填充物 --> 包装盒 --> 盒子与盒子之间的间距 content :width、height组成的 内容区域 padd......

studywin
今天
7
0
修复Win10下开始菜单、设置等系统软件无法打开的问题

因为各种各样的原因导致系统文件丢失、损坏、被修改,而造成win10的开始菜单、设置等系统软件无法打开的情况,可以尝试如下方法解决 此方法只在部分情况下有效,但值得一试 用Windows键+R打开...

locbytes
昨天
8
0
jquery 添加和删除节点

本文转载于:专业的前端网站➺jquery 添加和删除节点 // 增加一个三和一节点function addPanel() { // var newPanel = $('.my-panel').clone(true) var newPanel = $(".triple-panel-con......

前端老手
昨天
8
0
一、Django基础

一、web框架分类和wsgiref模块使用介绍 web框架的本质 socket服务端 与 浏览器的通信 socket服务端功能划分: 负责与浏览器收发消息(socket通信) --> wsgiref/uWsgi/gunicorn... 根据用户访问...

ZeroBit
昨天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部