码迷,mamicode.com
首页 > 数据库 > 详细

mysql5.7版本的explain解析

时间:2021-06-15 17:54:06      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:xpl   res   blank   cte   get   使用   href   size   log   

为什么数据库中要使用B+tree索引,而不用hash索引?MySQL中的B+tree索引介绍》 

看完以上这篇文章,明白B+tree索引结构,对explain解析更有帮助。

 

建立 t_user 表并建立3个B+tree索引

先在mysql中建个表:

CREATE TABLE `t_user`  (
  `id` int(6) NOT NULL AUTO_INCREMENT,
  `name` varchar(30) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL,
  `age` int(4) NOT NULL DEFAULT 20,
  `address` varchar(30) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL default ‘‘,
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `version` int(4) NOT NULL DEFAULT 0,
  PRIMARY KEY (`id`) USING BTREE,
  UNIQUE INDEX `idx_name`(`name`) USING BTREE,
  INDEX `idx_age_address`(`age`, `address`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 15 CHARACTER SET = latin1 COLLATE = latin1_swedish_ci ROW_FORMAT = DYNAMIC;

这个DDL创建了3个B+tree索引,我都用黄色背景标出来了。现在开始使用explain对各种查询进行分析:

 

1、type = ALL 是全表扫描

EXPLAIN select * from t_user; -- 全表扫描

 技术图片

 

 

 

 

 

end.

 

mysql5.7版本的explain解析

标签:xpl   res   blank   cte   get   使用   href   size   log   

原文地址:https://www.cnblogs.com/zhuwenjoyce/p/14883263.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!