SQL执行顺序的优先级
SELECT DISTINCT column, AGG_FUNC(column_or_expression), …
FROM mytableJOIN another_tableON mytable.column = another_table.columnWHERE constraint_expressionGROUP BY columnHAVING constraint_expressionORDER BY column ASC/DESCLIMIT count OFFSET COUNT;
FROM 和 JOINs
FROM 或 JOIN会第一个执行,确定一个整体的数据范围. 如果要JOIN不同表,可能会生成一个临时Table来用于 下面的过程。总之第一步可以简单理解为确定一个数据源表(含临时表)WHERE
我们确定了数据来源 WHERE 语句就将在这个数据源中按要求进行数据筛选,并丢弃不符合要求的数据行,所有的筛选col属性 只能来自FROM圈定的表. AS别名还不能在这个阶段使用,因为可能别名是一个还没执行的表达式GROUP BY
如果你用了 GROUP BY 分组,那GROUP BY 将对之前的数据进行分组,统计等,并将是结果集缩小为分组数.这意味着 其他的数据在分组后丢弃.HAVING
如果你用了 GROUP BY 分组, HAVING 会在分组完成后对结果集再次筛选。AS别名也不能在这个阶段使用.SELECT
确定结果之后,SELECT用来对结果col简单筛选或计算,决定输出什么数据.DISTINCT
如果数据行有重复DISTINCT 将负责排重.ORDER BY
在结果集确定的情况下,ORDER BY 对结果做排序。因为SELECT中的表达式已经执行完了。此时可以用AS别名.LIMIT / OFFSET
最后 LIMIT 和 OFFSET 从排序的结果中截取部分数据.
加粗样式
SQL执行顺序的优先级相关推荐
- sql笔记1:sql执行优先级和casewhen用法、sql执行顺序
MySQL 语句中执行优先级--and比or高 例: select * from table where 条件1 AND 条件2 OR 条件3 等价于 select * from table wher ...
- 数据库笔记-sql执行顺序以及检索优先级
sql 执行顺序优先级由高到低依次是: from 关键字后面的语句. where 关键字后面的语句." group by "后面的语句. select 后面的语句." o ...
- MySQL高级 - SQL技巧 - SQL执行顺序及正则表达式
SQL执行顺序 编写顺序 SELECT DISTINCT<select list> FROM<left_table> <join_type> JOIN<rig ...
- SQL 执行顺序图解
目录 执行顺序 数据的关联过程 执行顺序 这是一条标准的查询语句: 这是我们实际上SQL执行顺序: 我们先执行from,join来确定表之间的连接关系,得到初步的数据 where对数据进行普通的初步的 ...
- Hive 优化--SQL执行顺序、Hive参数、数据倾斜 、小文件优化
优化整体思路 如果资源充足就加资源加内存, 调度链路优化,调整调度顺序,时效性要求高的模型先产出, 数据接入模块,调优数据接入工具sqoop,datax 模型设计质量不高,调整模型,提高质量和复用度, ...
- Spark SQL执行流程解析之 sql执行顺序
一.Spark SQL模板解析 Spark Sql 关键字执行顺序跟Sql执行顺序类似: 1.先将from前两表做笛卡尔积加载进来形成虚拟表vt1, 2.on条件后为真的插入虚拟表形成vt2, 如果包 ...
- java程序基础——SQL执行顺序
SQL执行顺序 1.from 2.join 3.on 4.where 5. group by(开始使用select中的别名,后面的语句中都可 以使用) 6.avg,sum.... 7.having 8 ...
- mysql索引及sql执行顺序
1, 红黑树 同一层级的黑树到根结点经历的黑树数目一样 最坏情况的时间复杂度 lg n 是二叉树 b树 结点可以有多个孩子 b+树 父节点不存储数据 聚集索引)的叶子节点会存储数据行,也就是说数据和索 ...
- mysql索引执行顺序_mysql索引及sql执行顺序
1, 红黑树 同一层级的黑树到根结点经历的黑树数目一样 最坏情况的时间复杂度 lg n 是二叉树 b树 结点可以有多个孩子 b+树 父节点不存储数据 聚集索引)的叶子节点会存储数据行,也就是说数据和索 ...
最新文章
- python将数字转变为中文读法-Python转换数字到中文大写格式
- Spring-data-jpa和mybatis的比较及两者的优缺点?
- 阿里云自营建站买一年送一年
- 大专经过计算机统考,成人大专计算机统考选择题汇总
- spring-cloud:利用eureka实现服务提供与调用示例
- 数列分块入门 (1 ~ 7)
- mt4 指标 涨跌幅 颜色k线_通达信精选指标——彩色K线指标
- robust off matlab,matlab_robust LM test 求指点!(空间计量)
- 百度地图利用位置提供服务器,利用百度地图API获取当前位置信息的实例
- python编程(编写opengl程序)
- django在window和linux,从windows导入Django项目到linux时出错
- IE报错,VS定位不到错误的常见原因
- C# 匿名对象的写法
- ORB-SLAM2 窗口显示Viewer线程
- win10+eclipse+hadoop2.6.0 开发环境
- CAN与CANFD的区别
- 图说Python菜鸟版:第18章 JSON文件解析
- RLS实现求解最小二乘确定性正则方程
- HIT CSAPP hello的一生
- rtmp协议发送mp3和aac裸流的方法
热门文章
- 监控系统如何选择合适的时序数据库?
- 34. 你与周围人的差距
- LeetCode 867. 转置矩阵(java实现)
- 如何拍出来好看的Vlog,必备小技能(一)?
- access根据所属院系修改学号_用 Python 修改支付宝运动步数,轻松 TOP1
- Vue 引入ElementUI 2.0.11:依赖未发现的问题
- 视频教程-热更新框架设计之客户端热更框架(中部)视频课程-Unity3D
- 浏览器一句代码去除某奇艺,某库,某迅视频右上角logo水印
- 漏电开关上写着“每月按一次”的试验按钮,试验的是什么?
- mysql 多表联查语句优化_?多表联合查询SQL语句优化