group by的使用
时间: 2023-08-25 13:07:07 浏览: 163
group by是一种在开发中经常使用的SQL语句,它用于根据一个或多个字段对查询到的数据进行分组统计。可以通过group by语句将数据按照指定的字段进行分组,然后使用聚合函数对每个组进行统计计算。通常,group by语句会与聚合函数和having子句一起使用。
grouping sets选项是一种将多个group by子句组合到一个group by子句中的方法。它的结果与对指定组执行union all运算相等。使用grouping sets可以在一个查询中同时生成多个不同的分组聚合结果。
以下是一个示例:
SELECT region,commodity,SUM(salesVolume) as 销量
FROM Sales
GROUP BY GROUPING SETS (
ROLLUP (region,commodity),
CUBE (region,commodity)
)
在上面的示例中,数据会按照region和commodity两个字段进行分组,并计算销量的总和。使用GROUPING SETS子句,可以同时生成按照region和commodity进行分组的统计结果,以及按照只按照region进行分组的统计结果,以及只按照commodity进行分组的统计结果。
与group by相比,compute...by子句必须与order by子句一起使用,而且compute...by可以得到各组数据的统计结果,而不仅仅是统计结果。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [GROUP BY 使用方法详解](https://blog.csdn.net/weixin_47976708/article/details/129642649)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
- *3* [T-SQL 高级应用之数据汇总(聚合函数之2 group by) .](https://blog.csdn.net/u010236550/article/details/13398205)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文