SQL 知识量:22 - 44 - 129
需要区分group by与order by的不同之处:
order by | group by |
---|---|
对产生的输出排序 | 对行分组,但输出可能不是分组的顺序 |
任意列都可以使用(非选择的列也可以) | 只能使用选择列或表达式 |
不一定必须使用 | 如果与聚集函数一起使用列(或表达式),则必须使用 |
一般在使用group by子句时,也应该给出order by子句,这是保证数据正确排序的唯一方法,不要依赖group by的默认排序。
select语句具有的子句和元素越来越多,需要对各部分的应用顺序进行一下梳理,因为各个子句必须按照以下顺序给出,才能正常运行。
子句 | 说明 | 是否必须使用 |
---|---|---|
select | 要返回的列或表达式 | 是 |
from | 从中检索数据的表 | 仅在从表选择数据时使用 |
where | 行级过滤 | 否 |
group by | 分组说明 | 仅在按组计算聚集时使用 |
having | 组级过滤 | 否 |
order by | 输出排序 | 否 |
Copyright © 2017-Now pnotes.cn. All Rights Reserved.
编程学习笔记 保留所有权利
MARK:3.0.0.20240214.P35
From 2017.2.6