贝利信息

group by rollup函数

日期:2024-09-11 00:00 / 作者:小老鼠
GROUP BY ROLLUP 函数用于将数据集按列分组并汇总,创建不同层次的汇总,从最详细到最汇总,包括按各列分组以及所有行的汇总,从而提高查询效率和数据探索的灵活性。

GROUP BY ROLLUP:了解其用途和示例

GROUP BY ROLLUP 函数

GROUP BY ROLLUP 函数用于将数据集按指定列进行分组并汇总,并创建汇总的不同层次结构。它允许您查看数据的分组和汇总,从最详细的级别(仅包含特定列的唯一值)到最汇总的级别(包含所有行)。

语法

GROUP BY ROLLUP(column_list)

其中:

示例

假设我们有一个包含以下数据的表:

订单号 产品 价格 销售日期
1 手机 100 2025-03-01
2 手机 200 2025-03-05
3 电脑 500 2025-03-10
4 电脑 600 2025-03-12

我们可以使用 GROUP BY ROLLUP 函数按产品分组并汇总价格:

SELECT product, SUM(price) AS total_price
FROM orders
GROUP BY ROLLUP(product);

这将返回以下结果:

产品 总价
手机 300
电脑 1100
NULL 1400

此结果显示了产品的总价格,以及按产品分组和所有行的汇总。

优点

GROUP BY ROLLUP 函数提供以下优点:

局限性

GROUP BY ROLLUP 函数也有一些局限性: