1.使用explain查询select查询语句执行计划

mysql> select * from baba where name ='fjdsjf';

+------+--------+

| id   | name   |

+------+--------+

|    1 | fjdsjf |

+------+--------+

查询该sql语句的执行计划

mysql> explain select * from baba where name ='fjdsjf' \G;

*************************** 1. row ***************************

id: 1

select_type: SIMPLE

table: baba

type: ALL

possible_keys: NULL

key: NULL

key_len: NULL

ref: NULL

rows: 2

Extra: Using where

1 row in set (0.00 sec)  //该条sql语句没有走索引

增加索引:

mysql> create index index_baba on baba(name);

Query OK, 2 rows affected (0.09 sec)

Records: 2  Duplicates: 0  Warnings: 0

mysql> desc baba;

+-------+-------------+------+-----+---------+-------+

| Field | Type        | Null | Key | Default | Extra |

+-------+-------------+------+-----+---------+-------+

| id    | int(11)     | YES  |     | NULL    |       |

| name  | varchar(30) | YES  | MUL | NULL    |       |

+-------+-------------+------+-----+---------+-------+

mysql> explain select * from baba where name ='fjdsjf' \G;

*************************** 1. row ***************************

id: 1

select_type: SIMPLE

table: baba

type: ref

possible_keys: index_baba

key: index_baba

key_len: 33

ref: const

rows: 1    //搜索到一行,就找到所

Extra: Using where

2. 学会使用执行计划帮助

mysql> help explain

Name: 'EXPLAIN'

Description:

Syntax:

EXPLAIN [explain_type] SELECT select_options

explain_type:

EXTENDED

| PARTITIONS

Or:

EXPLAIN tbl_name

The EXPLAIN statement can be used either as a way to obtain information

about how MySQL executes a statement, or as a synonym for DESCRIBE:

o When you precede a SELECT statement with the keyword EXPLAIN, MySQL

displays information from the optimizer about the query execution

plan. That is, MySQL explains how it would process the statement,

including information about how tables are joined and in which order.

EXPLAIN EXTENDED can be used to obtain additional information.

For information about using EXPLAIN and EXPLAIN EXTENDED to obtain

query execution plan information, see

http://dev.mysql.com/doc/refman/5.1/en/using-explain.html.

转载于:https://blog.51cto.com/xin521long/1882496

使用explain查询select查询语句执行计划相关推荐

  1. EXPLAIN PLAN获取SQL语句执行计划

    一.获取SQL语句执行计划的方式 1. 使用explain plan 将执行计划加载到表plan_table,然后查询该表来获取预估的执行计划 2. 启用执行计划跟踪功能,即autotrace功能 3 ...

  2. SELECT TOP 1 比不加TOP 1 慢的原因分析以及SELECT TOP 1语句执行计划预估原理

    现实中遇到过到这么一种情况: 在某些特殊场景下:进行查询的时候,加了TOP 1比不加TOP 1要慢(而且是慢很多)的情况, 也就是说对于符合条件的某种的数据,查询1条(符合该条件)数据比查询所有(符合 ...

  3. oracle的sql执行计划语句,最权威Oracle获取SQL语句执行计划大全

    该文档为根据相关资料整理.总结而成,主要讲解Oracle数据库中,获取SQL语句执行计划的最权威.最正确的方法.步骤,此外,还详细说明了每种方法中可选项的意义及使用方法,以方便大家和自己日常工作中查阅 ...

  4. mysql执行计划命令_【MySQL】EXPLAIN命令详解--解释执行计划

    具体参考: 原文如下: 在工作中,我们用于捕捉性能问题最常用的就是打开慢查询,定位执行效率差的SQL,那么当我们定位到一个SQL以后还不算完事,我们还需要知道该SQL的执行计划,比如是全表扫描,还是索 ...

  5. Oracle 查看sql语句执行计划方法

    注意这篇文章只介绍查看sql语句执行计划的方法, 并不是说明如何看懂执行计划. 一般来讲, 直接在sqlplus 执行 set autotrace on; 就可以了 其前提是登陆用户必须有视图  v_ ...

  6. 查询分析器里查看执行计划

    当需要分析某个查询的效能时,最好的方式之一查看这个查询的执行计划.执行计划描述SQL Server查询优化器如何实际运行(或者将会如何运行)一个特定的查询. 查看查询的执行计划有几种不同的方式.它们包 ...

  7. mysql更改执行计划_11g中 connect by 语句执行计划改变

    从10.2.0.3升级到11.2.0.4的朋友,如果细心会发现,以下sql在11.2.0.4中执行效率变低(该sql主要是获取连接用户获取权限信息) select privilege#,level f ...

  8. 查询oracle sql语句执行最慢和执行最多的语句!

    1.查询sql执行最慢的语句 select * from (select a.sql_text,a.sql_fulltext,a.executions "执行次数",round(a ...

  9. 执行计划 分析一条sql语句的效率 mysql_mysql的SQL语句执行计划分析:EXPLAIN

    数据库最常见的操作就是查询了,我们经常要用"SELECT"语法对已有的表进行某种检索,但是在实际应用中,查询前我们并不知道该查询会如何运行.会使用多少时间.会涉及多少字段和记录,每 ...

最新文章

  1. 模拟内存计算如何解决边缘人工智能推理的功耗挑战
  2. pytorch 入门基础
  3. linux下ELK搭建好之后配置sentinl插件,进行邮件告警
  4. 什么是informer机制
  5. 上大学了,但学校一般,该怎么办?
  6. 微服务介绍及Asp.net Core实战项目系列之微服务介绍
  7. 移动通信—无线波传播
  8. 负数比较大小_人教版六下【第一单元】负数比较负数的大小
  9. JavaScript文档对象模型DOM节点操作之复制节点(7)
  10. 微信小程序实例源码大全下载
  11. IDEA 设置类注释模板
  12. python取下标_python获取下标
  13. 隐马尔可夫模型HMM
  14. Docker 多阶级构建:Docker 下如何实现镜像多阶级构建?
  15. PADS VX2.3在WIN 10闪退解决方法
  16. 2015年:跑步计划
  17. local variable ‘x‘ referenced before assignment错误
  18. SQL笔试题(持续更新)
  19. 再战AppInit_DLLs木马
  20. 查全国银行CNAPS CODE的地址

热门文章

  1. 蓝桥杯 ADV-9 算法提高 递归倒置字符数组
  2. L1-006. 连续因子-PAT团体程序设计天梯赛
  3. composer 更新php位置,使用composer安装/更新PHP包
  4. python colorbar位置大小调整_python - matplotlib相邻子图:添加colorbar更改子图的大小 - 堆栈内存溢出...
  5. python if语句判断字符串_python – 条件If语句:如果行中的值包含字符串…设置另一列等于字符串...
  6. java写一个外网访问的接口_不是吧不是吧!随便写的一个API竟获得 2.5 亿的访问量...
  7. eclipse在线安装ivy和ivyde
  8. Java9 新特性 详解
  9. 21- vue django restful framework 打造生鲜超市 -首页商品分类显示功能
  10. 编译器错误~System.Data.Objects.DataClasses.EntityObject在未被引用的程序集中定义