簡體   English   中英

Oracle SQL:sum(表示數量,否則數量為0 END的情況)OVER(分區為…)=無法獲得正確的GROUP BY語句

[英]Oracle SQL: sum( case when then quantity else 0 END) OVER (partition by…) = can't get right GROUP BY statement

我正在嘗試選擇幾個不同的總和,其中之一是OVER (Partition by column_also_in_select_plan)

但是,我似乎永遠無法正確執行GROUP BY語句。

例:

Select 1, 2, 3, sum(4) over (partition by 3), sum(case when 6 = etc...) 
FROM table
Where filters
GROUP BY ?

感謝您的提示:)

同時進行聚合使用窗口函數並沒有多大意義,因此您感到困惑也就不足為奇了。 在上面的示例中,您可能希望將窗口移至外部查詢,即:

select 1, 2, 3, sum(sum4) over(partition by 3), ...
from (
      select 1, 2, 3, sum(4) as sum4
      from table
      where filters
      group by 1, 2, 3
) x

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM