MySql学习笔记(七):explain-索引的使用情况
发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,主要内容:explain的possible_key、key、key_len、ref、rows入门。1、possible_key表示在查询过程中可能用到的索引。查询涉及到的字段上如果有索引,则该索引会出
千家信息网最后更新 2025年01月23日MySql学习笔记(七):explain-索引的使用情况
主要内容:explain的possible_key、key、key_len、ref、rows入门。
1、possible_key
表示在查询过程中可能用到的索引。查询涉及到的字段上如果有索引,则该索引会出现在possible_key列中表示可能用到,但实际上并不一定会用到。例:
mysql> explain select * from t_blog where id = 1;+----+-------------+--------+-------+---------------+---------+---------+-------+------+-------+| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |+----+-------------+--------+-------+---------------+---------+---------+-------+------+-------+| 1 | SIMPLE | t_blog | const | PRIMARY | PRIMARY | 4 | const | 1 | |+----+-------------+--------+-------+---------------+---------+---------+-------+------+-------+1 row in set
因为id是t_blog的主键,查询时涉及到了该字段,possible_key列中有主键字样。
2、key
表示再查询过程中实际用到的索引,如果为null则表示没有用到索引
如上例,key为主键,表示查询过程中用到了主键。完整解读:理论上要用到主键,实际上确实用到了主键。
存在理论上应该用到某索引,但实际上没有用到,即索引失效;
如果查询中使用了覆盖索引(select子句与符合索引顺序和字段完全相同),possible_key为null,key为覆盖索引。
3、key_len
索引中使用的字节数,越短越好。这个值表示最大可能使用长度而不是实际使用长度,例如:
mysql> explain select * from t_blog where title = 'C语言精讲';+----+-------------+--------+------+---------------+---------+---------+-------+------+--------------------------+| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |+----+-------------+--------+------+---------------+---------+---------+-------+------+--------------------------+| 1 | SIMPLE | t_blog | ref | index_1 | index_1 | 153 | const | 1 | Using where; Using index |+----+-------------+--------+------+---------------+---------+---------+-------+------+--------------------------+1 row in set
此时,查询条件多一个:
mysql> explain select * from t_blog where title = 'C语言精讲' and typeId = 2;+----+-------------+--------+------+---------------+---------+---------+-------------+------+--------------------------+| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |+----+-------------+--------+------+---------------+---------+---------+-------------+------+--------------------------+| 1 | SIMPLE | t_blog | ref | index_1 | index_1 | 158 | const,const | 1 | Using where; Using index |+----+-------------+--------+------+---------------+---------+---------+-------------+------+--------------------------+1 row in set
查询条件变多,精度变高,同时key_len也在变大。
4、ref
显示索引的哪一列被使用了,可能的话是一个常量。
一共有两种格式:
1>const:常量,where <索引>='常量'
2><数据库名>.<表名>.<字段名> :某数据库中的某表中的某列被使用
5、rows
每张表有多少行被优化器查询
索引
查询
实际
字段
实际上
常量
过程
条件
理论
语言
长度
最大
相同
中用
中表
内容
同时
如上
子句
字样
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
orecle数据库培训机构
汕头数字软件开发费用
服务器便宜超级防护
中孚软件开发怎么样
我心中的网络安全论文题目
课堂软件开发
魔兽世界数据库 多玩
数据库系统的安全的重要性的
战地2开启服务器闪退
html网站用什么数据库
传感器 触发 数据库
百度在线网络技术招聘
互天网络技术有限公司
福建惠普服务器维修调试价格
瑞友天翼副服务器
多核服务器 玩法
新建员工工资数据库
智能网络技术是啥
数据库到jsp页面
mcbbs官方服务器
ftp服务器怎么取出数据库
gps物联卡 连接服务器
云南定制软件开发服务商
公司oa 服务器中勒索病毒
湖北服务器硬盘哪里买
远程运行服务器脚本
数据库基础及应用试题
c 软件开发工作室
天津信息化软件开发价格大全
链接数据库耗时解决办法