mysql查看优化后的语句_Mysql查看优化后的SQL 语句
EXPLAIN EXTENDED
1先执行 EXPLAIN EXTENDED
2 show warnings;
EXPLAIN EXTENDED
SELECT*FROM
`receivable_application_relation` d
WHERE d.`application_id` IN
(SELECT
id
FROM
application
WHERE application_code IN ('ZYHT20190305192721001','ZYHT20190309152839001','ZYHT20190309152904001'));
SHOW WARNINGS;
查看优化后最终执行的sql
In 并不是走的子查询 而是 join ,这个是 从上面的画红线的地方copy 出来的
SELECT
`cf_receivables_financing`.`d`.`id` AS `id`,
`cf_receivables_financing`.`d`.`application_id` AS `application_id`,
`cf_receivables_financing`.`d`.`receivable_id` AS `receivable_id`,
`cf_receivables_financing`.`d`.`update_time` AS `update_time`,
`cf_receivables_financing`.`d`.`create_time` AS `create_time`,
`cf_receivables_financing`.`d`.`deleted` AS `deleted`
FROM
`cf_receivables_financing`.`application`
JOIN `cf_receivables_financing`.`receivable_application_relation` `d`
WHERE (
(
`cf_receivables_financing`.`d`.`application_id`=`cf_receivables_financing`.`application`.`id`
)
AND (
`cf_receivables_financing`.`application`.`application_code` IN ('ZYHT20190305192721001','ZYHT20190309152839001','ZYHT20190309152904001')
)
)
EXPLAIN EXTENDED
SELECT
d.*FROM
`receivable_application_relation` d
INNER JOIN application a
ON d.`application_id`=a.id
WHERE a.application_code IN ('ZYHT20190305192721001','ZYHT20190309152839001','ZYHT20190309152904001');
查看优化后的sql
SELECT
`cf_receivables_financing`.`d`.`id` AS `id`,
`cf_receivables_financing`.`d`.`application_id` AS `application_id`,
`cf_receivables_financing`.`d`.`receivable_id` AS `receivable_id`,
`cf_receivables_financing`.`d`.`update_time` AS `update_time`,
`cf_receivables_financing`.`d`.`create_time` AS `create_time`,
`cf_receivables_financing`.`d`.`deleted` AS `deleted`
FROM
`cf_receivables_financing`.`receivable_application_relation` `d`
JOIN `cf_receivables_financing`.`application` `a`
WHERE (
(
`cf_receivables_financing`.`d`.`application_id`=`cf_receivables_financing`.`a`.`id`
)
AND (
`cf_receivables_financing`.`a`.`application_code` IN ('ZYHT20190305192721001','ZYHT20190309152839001','ZYHT20190309152904001')
)
);
mysql查看优化后的语句_Mysql查看优化后的SQL 语句相关推荐
- mysql导出不带注释的sql语句_MySQL mysqlbinlog解析出的SQL语句被注释是怎么回事
MySQL mysqlbinlog解析出的SQL语句被注释是怎么回事 一网友反馈使用mysqlbinlog解析出的二进制日志中的内容中,有些SQL语句有#注释的情况,这个是怎么回事呢?我们通过实验来了 ...
- mysql直连1.执行语句_MySQL随笔01_一条SQL语句是如何执行的
一.MySQL基础架构示意图 二.MySQL分层 总体来讲,MySQL可以分为二层:Server层 和 存储引擎 两部分,如下图所示. 不同的存储引擎共用一个Server层. 三.各部分组件概述 连接 ...
- mysql 怎么查询慢sql语句_Mysql中 查询慢的 Sql语句的记录查找
Mysql中 查询慢的 Sql语句的记录查找 慢查询日志 slow_query_log,是用来记录查询比较慢的sql语句,通过查询日志来查找哪条sql语句比较慢,这样可以对比较慢的sql可以进行优化. ...
- mysql命令行语句_MySql命令行命令和SQL语句
一.常用mysql命令行命令 1.启动MYSQL服务 net start mysql 停止MYSQL服务 net stop mysql 2.netstat -na|findstr 3306 查看被监听 ...
- mysql基础题知识基本语句_Mysql基础知识02-基础SQL语句 | 文艺数学君
摘要这一篇介绍一下关于MySQL的基本操作和常用的命令. 主要会包括, 简单查询:desc; select (distinct)去重; select count(1)统计总数; 进阶查询:限制wher ...
- mysql添加多字段语句_mysql添加多个字段sql语句
1.mysql 怎么给一个表一次增加多个字段 一.添加字段的命令如下:alter table tableName add newColumn varchar(8) comment '新添加的字段' 1 ...
- mysql在哪执行sql语句_mysql从命令行执行sql语句
Codeforce Round #218 Div2 A:没个元素的个数少的变成多的和就是了 B:居然被systemtest搓掉了- -分东西,我改的代码,还是shit一样的过的...别人的直接两个操作 ...
- oracle查看执行过的语句,oracle 查询执行过的SQL语句
MySQL开启日志记录查询/执行过的SQL语句 作为后端开发者,遇到数据库问题的时候应该通过分析SQL语句来跟进问题所在,该方法可以记录所有的查询/执行的SQL语句到日志文件. 方法有几种,但是个人觉 ...
- SQL优化篇:如何成为一位写优质SQL语句的绝顶高手!
写SQL语句不难,稍微系统学习过数据库相关技术的人都能做到,但想要写好SQL却也不是一件易事,在大多数编写SQL的时候,很多人都是以实现需求为原则去撰写的,当一条SQL写出来之后,只要能满足业务需求就 ...
- JDBC连接mysql、创建表、操作数据、PreparedStatement防注入、sql语句返回值类型知识汇总
JDBC连接过程: import java.sql.*;/*** Description:* Created by CWG on 2020/10/29 21:05*/ public class Con ...
最新文章
- php适配器模式应用,什么是适配器模式,它有哪些应用场景
- 将MATLAB的变量数据导入到C/C++程序中的方法
- 任务与中断共享资源冲突示例
- Thinking in java基础之集合框架
- 1.3(java学习笔记)构造方法及重载
- c语言readdir函数功能,C语言readdir()函数:读取目录函数
- 网易云出现undefined symbol: fribidi_get_par_embedding_levels_ex
- 大数据如何影响百姓生活
- python从指定文件夹导入模块_python – 从特定文件夹导入模块
- vim怎么配置只有打开特定文件高亮_vimrc里各种配置的含义
- 1分钟实现Autodesk Vault登录对话框
- android国际化多语言对照
- JAVA练习173-幂集
- 电脑右键的新建怎么没有了
- Android 控件获取焦点
- C#压缩ACCESS数据库的类源码
- 银行利息计算公式推导(存款,贷款)
- 该设备正在使用中,请关闭可能使用该设备的所有程序或窗口,然后重试
- KUDU和IMPALA的结合使用
- 分块算法板子luogu1903