【SQL基础】GROUP BY与 WHERE HAVING ORDER BY的顺序
创始人
2025-05-29 22:26:30

GROUP BY与 WHERE HAVING ORDER BY的顺序

书写顺序:select–from–where–group by–having–order by

执行顺序:from—where–group by—having—select—order by

from:需要从哪个数据表检索数据 
where:过滤表中数据的条件 
group by:如何将上面过滤出的数据分组 
having:对上面已经分组的数据进行过滤的条件 
select:查看结果集中的哪个列,或列的计算结果 
order by :按照什么样的顺序来查看返回的数据 

where先执行,再groupby分组

GROUP BY子句必须出现在WHERE子句之后,ORDER BY子句之前
在这里插入图片描述

group by先分组,having在执行

1、满足SELECT子句中的列名必须为分组列或列函数,因为SELECT有group by中包含的列

2、having必须和group by一起用,且在group by后面

3、group by、having、order by的使用顺序:group by 、having、order by

SELECT *|字段列表 [as 别名] FROM 表名 [WHERE 子句] [GROUP BY 子句][HAVING 子句][ORDER BY 子句][LIMIT 子句]

除聚集计算语句外,SELECT语句中的每个列都必须在GROUP BY子

在这里插入图片描述

having和where的区别

(1)having必须在执行了group by操作之后才能运行,having必须和group by一起用,且在group by后面

(2)where的执行顺序在group by之前,也就必然在having之前。

(3)having后面可以加上聚合函数,而where后面不能加聚和函数如count(),sum(),avg(),max(),min()等函数。

常用聚合函数:

在这里插入图片描述

order by 排序实例

order by A,B        # A 升序排列 B也升序排列
order by A desc,B   # A 降序(优先),B 升序排列
order by A ,B desc  # A 升序(优先),B 降序排列

相关内容

热门资讯

每人6000元!福建117名学... 近日,福建省人社厅发布通知,117名学生获得2024-2025学年中等职业教育国家奖学金,每人600...
福建两地住房公积金政策有调整 近日,莆田、平潭住房公积金政策有调整,一起来看——莆田近日,莆田市住房公积金管理中心出台《关于支持购...
闽侯集中培训275名基层儿童福... 17日上午,闽侯县组织开展儿童督导员与儿童主任业务能力提升培训会,通过“线上+线下”培训为全县基层儿...
扬农化工股价涨5.26%,南方... 12月18日,扬农化工涨5.26%,截至发稿,报68.42元/股,成交8893.08万元,换手率0....
兆易创新股价涨5.06%,摩根... 12月18日,兆易创新涨5.06%,截至发稿,报212.41元/股,成交31.29亿元,换手率2.2...