博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mysql执行顺序
阅读量:3711 次
发布时间:2019-05-21

本文共 814 字,大约阅读时间需要 2 分钟。

一. SQL执行加载顺序手写顺序

SELECT * FROM USER a JOIN ON role b a.user_Id = b.Role_Id WHERE a.user_Id = 1 GROUP BY a.Login_TimesHAVING a.User_Id > 2ORDER BY a.SortLIMIT 10

二.机器分析读取顺序

1… FROM <left_table>
2.<join_type> JOIN <right_table>
3. ON <join_condition>
4. WHERE <where_condition>
5. GROUP BY <group_by_list>
6. WITH {CUBE | ROLLUP}
7. HAVING <having_condition
8. SELECT
9.DISTINCT
10. ORDER BY <order_by_list>

1、FROM table1 left join table2 on 将table1和table2中的数据产生笛卡尔积,生成Temp1

2、JOIN table2 所以先是确定表,再确定关联条件
3、ON table1.column = table2.columu 确定表的绑定条件 由Temp1产生中间表Temp2
4、WHERE 对中间表Temp2产生的结果进行过滤 产生中间表Temp3
5、GROUP BY 对中间表Temp3进行分组,产生中间表Temp4
6、HAVING 对分组后的记录进行聚合 产生中间表Temp5
7、SELECT 对中间表Temp5进行列筛选,产生中间表 Temp6
8、DISTINCT 对中间表 Temp6进行去重,产生中间表 Temp7
9、ORDER BY 对Temp7中的数据进行排序,产生中间表Temp8
10、LIMIT 对中间表Temp8进行分页,产生中间表Temp9

SQL解析顺序

转载地址:http://yacjn.baihongyu.com/

你可能感兴趣的文章
Python安装教程(小白食用)
查看>>
win10的Java安装教程(小白食用)
查看>>
记一次程序bug引发的电脑异常
查看>>
关于PHPstudy中Apache无法正常启动的解决方案
查看>>
VS2017安装C++图形数据库graphics.h教程
查看>>
关于在VS2017中运行程序中颜色与源代码中颜色不符的问题
查看>>
Kali 2020.2虚拟机安装及安装后配置教程(图文小白版)
查看>>
C语言编程0基础学习历程(7)——C的函数
查看>>
洛谷——P2241 统计方形(数据加强版)(数学+暴力枚举)
查看>>
Windows Server 2008 安装教程——图文小白版(附下载地址)
查看>>
Windows Server 2003 安装教程——图文小白版(附下载地址)
查看>>
Jarvis OJ BASIC 公倍数
查看>>
sqli-lab 闯关教程 Less-1
查看>>
sqli-lab 闯关教程 Less-2
查看>>
sqli-lab 闯关教程 Less-3
查看>>
sqli-lab 闯关教程 Less-4
查看>>
sqli-lab 闯关教程 Less-5
查看>>
Ping 命令详解(含真实操作截图)
查看>>
L1-002 打印沙漏 (20分) C++版 AC代码
查看>>
L1-005 考试座位号 (15分) C++版 AC代码
查看>>