加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SQL选取语句的执行顺序是什么样的呢?

发布时间:2023-06-03 14:00:59 所属栏目:MsSql教程 来源:
导读:这篇文章主要介绍“SQL Select语句执行顺序是怎样子的呢?”的相关知识,下面会通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“SQL Select语句执行顺序是怎样子的呢?&rdqu
这篇文章主要介绍“SQL Select语句执行顺序是怎样子的呢?”的相关知识,下面会通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“SQL Select语句执行顺序是怎样子的呢?”文章能帮助大家解决问题。
 
1、from子句组装来自不同数据源的数据;
 
2、where子句基于指定的条件对记录行进行筛选;
 
3、group by子句将数据划分为多个分组;
 
4、使用聚集函数进行计算;
 
5、使用having子句筛选分组;
 
6、计算所有的表达式;
 
7、使用order by对结果集进行排序。
 
举例说明: 在学生成绩表中 (暂记为 tb_Grade), 把 "考生姓名"内容不为空的记录按照 "考生姓名" 分组, 并且筛选分组结果, 选出 "总成绩" 大于 600 分的.
 
标准顺序的 SQL 语句为:
 
Select 考生姓名, max(总成绩) as max总成绩
 
from tb_Grade
 
where 考生姓名 is not null
 
group by 考生姓名
 
having max(总成绩) > 600
 
order by max总成绩
 
在上面的示例中 SQL 语句的执行顺序如下:
 
(1). 首先执行 FROM 子句, 从 tb_Grade 表组装数据源的数据
 
(2). 执行 WHERE 子句, 筛选 tb_Grade 表中所有数据不为 NULL 的数据
 
(3). 执行 GROUP BY 子句, 把 tb_Grade 表按 "学生姓名" 列进行分组
 
(4). 计算 max() 聚集函数, 按 "总成绩" 求出总成绩中最大的一些数值
 
(5). 执行 HAVING 子句, 筛选课程的总成绩大于 600 分的.
 
(7). 执行 ORDER BY 子句, 把最后的结果按 "Max 成绩" 进行排序.
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章