数据库--SQL关键字的执行顺序

一条sql语句通常包括:

select from join where group by having order by 聚合函数 limit top

浅谈执行顺序:

1)、首先确定一点,并不是按照我们写的语句顺序,从左--->右执行的

2)、获取结果集 ----> 指定查询的某些字段 --> 按照某些内容进行排序

首先 执行from ,join 确定表之间的关系,得到初步的----->结果集1

where 对结果集1 进行筛选 得到-->结果集2

group by 进行分组 -->结果集3

对结果集3进行having筛选,得到 ---->结果集 4

指定查询的字段:

select 指定需要查询的字段,也可以是聚合函数 --->结果去重

合并分组结果集,并按照order by 的 条件进行排序

如果存在limit 或者top之类的话,这是在最后才会执行的

小结:

第一句话: 从这个顺序中我们可以发现,所有的查询语句都是从 FROM开始执行的。

**第二句话:**在实际执行过程中,每个步骤都会为下一个步骤生成一个虚拟表,这个虚拟表将作为下一个执行步骤的输入。

看到这了,点个赞再走吧!

相关推荐
muddjsv4 分钟前
HBase与Hadoop:基于什么开发?深度剖析与架构图
数据库·hadoop·hbase
muddjsv4 分钟前
HBase 与 Hadoop 安装与上手使用全指导
数据库·hadoop·hbase
学计算机的计算基7 分钟前
MySQL 锁体系全解:从 MDL 到间隙锁,一次讲透
java·数据库·笔记·python·mysql
Trouvaille ~9 分钟前
【Redis篇】Redis 事务:原子性与脚本执行机制
数据库·redis·后端·算法·junit·lua·原子性
努力攻坚操作系统11 分钟前
Elasticsearch 完全教学指南:从入门到精通
大数据·数据库·elasticsearch·搜索引擎·全文检索
睡不醒男孩03082314 分钟前
行业解决方案二:CLup打造企业级数据库私有云(DBaaS)平台解决方案
数据库·云计算·clup
猴哥聊项目管理15 分钟前
2026年信创项目管理:如何用甘特图提升进度管控
大数据·数据库·项目管理·企业数字化转型·甘特图·敏捷开发·项目进度管理软件
j7~24 分钟前
MySQL C语言连接库和MYSQL连接池原理与简易数据网站数据流动是如何进行的
c语言·数据库·mysql·连接池·mysqlc语言连接库
2601_9611940228 分钟前
27考研刘晓燕资源
linux·sql·ubuntu·华为·pdf·.net
暗夜猎手-大魔王36 分钟前
转载--Hermes Agent 10 | 7 层安全防线:从用户授权到输入净化
java·数据库·安全