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

SQL查询语句执行顺序

时间:2020-03-12 23:26:26      阅读:81      评论:0      收藏:0      [点我收藏+]

标签:结构   img   编程语言   编程   应用程序   产生   agg   ble   image   

在大多数编程语言中,代码是按照编码顺序执行的,但是在SQL语言中,尽管SELECT语句第一个出现,但却不是第一个被执行的。

 

SQL查询语句内部执行顺序:

from子句--->where子句--->group by子句--->聚合函数--->having子句--->select 字段--->order by子句

 

每个执行步骤都会产生一个虚拟表,该虚拟表作为下一个步骤的输入。这些虚拟表对调用者(客户端应用程序或者外部查询)不可用。只有在最后一步生成的表才会返回给调用者。

技术图片

 

 

SQL查询语句的完整结构如下,执行顺序为括号内数字:
(8) SELECT (9) DISTINCT <select_list>, (6) AGG_FUNC <select_list>
(1) FROM <left_table>
(3) <join_type> JOIN <right_table>
(2) ON <join_condition>
(4) WHERE <where_condition>
(5) GROUP BY <group_by_list>
(7) HAVING <having_condition>
(10) ORDER BY <order_by_list>
(11) LIMIT <limit_number> OFFSET <offset_number>
 
注:如有子查询,先执行子查询。

 

SQL查询语句执行顺序

标签:结构   img   编程语言   编程   应用程序   产生   agg   ble   image   

原文地址:https://www.cnblogs.com/HuZihu/p/12469208.html

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