gpt4 book ai didi

sql - 在查询中使用 ROLLUP...小问题

转载 作者:搜寻专家 更新时间:2023-10-30 22:20:40 25 4
gpt4 key购买 nike

在oracle数据库中是一个“table_one”:

COL1 COL2
-----------------
2 4
2 1
13 14
13 15

我有这个问题:

SELECT col1, sum(col2) FROM table_one GROUP BY ROLLUP(col1, col2);

查询执行后我有:

------------
2 1
2 4
2 5
13 14
13 15
13 29
34

但我需要另一种方式,像这样:

------------
2 1
2 4
2 5
13 14
13 15
13 29

没有所有列的摘要我如何更改我的查询......?

最佳答案

有两种方法可以解决这个问题。第一种是使用分组集来准确定义要创建的汇总组。

在这种情况下,您可以使用以下查询定义对 (col1) 和 (col1, col2) 进行分组:

select col1, sum(col2) 
from table_one
group by grouping sets ((col1), (col1, col2))

否则,您可以使用以下查询按 col1 分组并在 col2 上汇总:

select col1, sum(col2) 
from table_one
group by col1, rollup(col2)

这两个查询都应该产生您需要的输出。

关于sql - 在查询中使用 ROLLUP...小问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4530896/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com