Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1084583
  • 博文数量: 646
  • 博客积分: 288
  • 博客等级: 二等列兵
  • 技术积分: 5375
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-08 14:33
个人简介

为了技术,我不会停下学习的脚步,我相信我还能走二十年。

文章分类

全部博文(646)

文章存档

2014年(8)

2013年(134)

2012年(504)

分类:

2012-07-24 16:17:33

2009年05月26日 作者: 大头刚 

mk-visual-explain - 格式化mysql执行计划输出。安装方法可以参考。
Mysql默认的执行计划输出类似如下:

mysql> explain select count(*) from test a,test2 b where a.id<100 and b.id>160 and a.id=b.id;
+----+-------------+-------+--------+---------------+---------+---------+----------------+------+-------------+
| id | select_type | table | type   | possible_keys | key     | key_len | ref            | rows | Extra       |
+----+-------------+-------+--------+---------------+---------+---------+----------------+------+-------------+
|  1 | SIMPLE      | b     | range  | uid           | id     | 4       | NULL           |   30 | Using where | 
|  1 | SIMPLE      | a     | eq_ref | PRIMARY       | PRIMARY | 4       | b.uid |    1 | Using index | 
+----+-------------+-------+--------+---------------+---------+---------+----------------+------+-------------+
2 rows in set (0.00 sec)

使人觉得很单一、没有层次感,那么可以使用这个工具来转化成树状结构。

mysql> pager mk-visual-explain;
PAGER set to 'mk-visual-explain'
mysql> explain select count(*) from test a,test2 b where a.id<100 and b.id>160 and a.id=b.id;
JOIN
+- Unique index lookup
|  key            a->PRIMARY
|  possible_keys  PRIMARY
|  key_len        4
|  ref            b.id
|  rows           1
+- Filter with WHERE
   +- Bookmark lookup
      +- Table
      |  table          b
      |  possible_keys  id
      +- Index range scan
         key            b->id
         possible_keys  id
         key_len        4
         rows           30
2 rows in set (0.00 sec)

是否觉得舒服多了?当然实质的内容还是一样的,选择怎么输出就看自己的喜好了。

阅读(403) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~