Oracle SQL 使用正确的分区求和
Posted
技术标签:
【中文标题】Oracle SQL 使用正确的分区求和【英文标题】:Oracle SQL using correctly sum over partition 【发布时间】:2017-11-28 02:04:21 【问题描述】:我想从已经建好的表中获取一些信息:
PIN BS DES SPEND
12300 CRRT 001 $15
12300 CN 001 $20
12300 CRRT 002 $10
12300 TRN 001 $5
12300 PWR 001 $30
12300 TRN 002 $5
145000 PWR 001 $30
145000 SOL 001 $1
145000 CN 001 $20
145000 SOL 002 $2
145000 PWR 002 $40
对于 BS 重复的每个案例和 SPEND 值总和,我需要相同的 PIN。
PIN BS SPEND
12300 CN $20
12300 CRRT $25
12300 PWR $30
12300 TRN $10
145000 CN $20
145000 PWR $70
145000 SOL $3
但仍在试图弄清楚如何订购我的查询。
SELECT PIN, BS,
SUM(SPEND) OVER (PARTITION BY BS ORDER BY DES) AS SUMSPEND,
FROM DATA_TABLE ORDER BY PIN ASC
有什么帮助吗?
【问题讨论】:
【参考方案1】:要获得发布的输出,您不需要总和的分析版本,只需这样做
SELECT PIN, BS, SUM(SPEND) AS SUMSPEND
FROM DATA_TABLE
group by pin, bs
ORDER BY PIN ASC;
【讨论】:
没用,我尝试更改 sum 分析的顺序。以上是关于Oracle SQL 使用正确的分区求和的主要内容,如果未能解决你的问题,请参考以下文章