温馨提示×

PostgreSQL rollup在聚合查询中的作用

小樊
84
2024-09-06 03:58:52
栏目: 云计算

PostgreSQL中的ROLLUP在聚合查询中主要用于对多个分组进行汇总计算

假设我们有一个名为sales的表,其中包含以下字段:region(地区)、city(城市)和amount(销售额)。现在我们想要查询每个地区、城市以及整体的销售额。可以使用以下查询实现:

SELECT region, city, SUM(amount) as total_amount
FROM sales
GROUP BY ROLLUP(region, city);

这将返回以下结果:

region | city      | total_amount
--------+------------+--------------
NULL    | NULL       | 10000
North   | NULL       | 5000
North   | New York   | 2000
North   | Boston     | 3000
South   | NULL       | 5000
South   | Los Angeles| 2000
South   | Miami      | 3000

在这个例子中,我们可以看到每个地区、城市以及整体的销售额。通过使用ROLLUP,我们可以方便地对多个分组进行汇总计算,而无需编写多个查询或使用UNION来合并结果。

0