SQL语句中,如果有group by 和order by两个语句,是先分组还是先排序?

先进行分组处理。

Group By 和 Having, Where ,Order by这些关键字是按照如下顺序进行执行的:Where, Group By, Having, Order by。

首先where将最原始记录中不满足条件的记录删除(所以应该在where语句中尽量的将不符合条件的记录筛选掉,这样可以减少分组的次数)
然后通过Group By关键字后面指定的分组条件将筛选得到的视图进行分组

接着系统根据Having关键字后面指定的筛选条件,将分组视图后不满足条件的记录筛选掉
最后按照Order By语句对视图进行排序,这样最终的结果就产生了。
在这四个关键字中,只有在Order By语句中才可以使用最终视图的列名,如:

SELECT FruitName, ProductPlace, Price, ID AS IDE, Discount
FROM T_TEST_FRUITINFO
WHERE (ProductPlace = N’china’)
ORDER BY IDE
这里只有在ORDER BY语句中才可以使用IDE,其他条件语句中如果需要引用列名则只能使用ID,而不能使用IDE。

转 :tiguer
https://blog.csdn.net/tiguer/article/details/80234929

sql 分组排序语句顺序相关推荐

  1. SQL 分组排序后取值

    SQL 分组排序后取值 场景前要: 从前有三个班级,每个班级的学生成绩各异,有一天睿智的校长希望知道这一年中,每个班级近一年里所有的学生成绩信息,和查询每个班级近一年里所有第一名的学生成绩信息,故事由 ...

  2. mysql 2008降序排列,sql倒序排序语句

    sql中的排序,如何使用倒序 sql中的排序使用倒序的步骤如下: 我们需要准备的材料分别是:电脑.sql查询器. 1.首先,打开sql查询器,连接上相应的数据库表,例如test表,以score字段倒序 ...

  3. SQL 分组排序及命令行运行脚本的例子 PsTools

    以下实例用来通过DeviceID分组然后DeviceTime排序 每次9个9个放进新表中: USE [LoadTestManager] GO/****** Object: StoredProcedur ...

  4. LeetCode-185 : sql分组排序再取前几位

    题目描述:在EMPLOYEE表中查询每个部门工资前三高的员工. 题目分析: 题目中还是已经描述的比较清楚,比如某个部门工资按从高到低排序为9000,8900,8900,8500,8000-那么该部门需 ...

  5. MySQL 如何实现 Oracle 的 row_number() over() 分组排序功能

    文章目录 Oracle 的分组排序 MySQL 的分组排序 分析需求 创建模拟数据 SQL 实现 结果演示 Oracle 的分组排序 Oracle 的分组排序函数的语法格式如下: ROW_NUMBER ...

  6. mysql分组取出每组地一条数据_MYSQL实现分组排序并取组内第一条数据

    一.需要实现分组排序并且取组内状态优先级最高的数据 有一张这样的数据表, 需求是根据error_type分组然后取status最小的第一条数据 第一种写法: select t.* from ( sel ...

  7. server sql 分组 去重 字符串拼接_SQL | 数据分析面试必备SQL语句+语法

    | 作者:无眠 | 来源:知乎 前些天在网上冲浪的时候看到一个案例咨询,问说世界500强的数据分析要不要去,评论区一片爆炸:"楼主能分享一下文科生怎么转行做数据分析吗??".&qu ...

  8. MySQL补充部分-SQL逻辑查询语句执行顺序

    一 SELECT语句关键字的定义顺序 SELECT DISTINCT <select_list> FROM <left_table> <join_type> JOI ...

  9. mysql五补充部分:SQL逻辑查询语句执行顺序

    mysql五补充部分:SQL逻辑查询语句执行顺序一 SELECT语句关键字的定义顺序 二 SELECT语句关键字的执行顺序 三 准备表和数据 四 准备SQL逻辑查询测试语句 五 执行顺序分析 一 SE ...

  10. list对oracle结果集排序了_详解SQL窗口函数和分组排序函数

    Mysql从8.0版本开始,也和Sql Server.Oracle一样支持在查询中使用窗口函数,本文将根据官方文档,通过实例介绍窗口函数并举例分组排序函数的使用. 英语好的大佬请移步官方文档~点我! ...

最新文章

  1. 深入浅出Docker(一):Docker核心技术预览
  2. 机器学习案例 特征组合——高帅富 冷启动——从微博等其他渠道搜集数据进行机器学习 用户年龄——线性分段处理...
  3. HTTP状态码(HTTP Status Code),常见的error 404, error 504等的意思
  4. 微信公众平台开发教程(四) 实例入门:机器人(附源码)
  5. 干货 | 携程酒店MOCK全链路实践
  6. 「八大排序算法」16张图带你搞懂基数排序
  7. 2010年清华大学计算机研究生机试真题
  8. 如果在iTerm2中复制命令特别卡,就跟慢动作似的,怎么办?
  9. Java 为什么数组下标只能为int不能为long?int32位,为何最大值不是2^32 -1 ? java基本类型取值范围
  10. 怎么调出matlab的函数,matlab定义函数【搞定方法】
  11. 模仿豆丁、百度文库播放器
  12. 如何在云服务器上使用Docker部署easy-mock
  13. Python用可变参数找出最大值和最小值
  14. 如何下载高清卫星地图
  15. 【windows11】win10专业版 使用“安装助手” 直接升级到win11
  16. 大数据血缘分析系统设计
  17. 华为机试(JAVA)真题Od【A卷+B卷】
  18. 15幅非常有创意的影子摄影作品欣赏
  19. 5G NR 缩略语整理
  20. 不要上当,显示器用绿色背景有害视力

热门文章

  1. 【Love2d从青铜到王者】第十二篇:Love2d之碰撞检测(Detecting collision)
  2. 北大AI公开课笔记整理
  3. python pandas 数据透视表_python 用pandas实现数据透视表功能
  4. 素质的冰山模型,成就动机 笔记
  5. PS2021中使用Nik插件崩溃闪退|Nik Collection不兼容cc2021闪退的解决方法
  6. 使用百度OCR做答题软件辅助
  7. 分位数回归-Quantile regression
  8. supervisor备忘
  9. supervisor 使用文档
  10. 整数规划(数学+软件)【原创】