あまりちゃんと理解できていない。
自分用のメモとして。
GROUPING演算子
ROLLUP:小計、合計を出力
CUBE:3次元以上のデータ。よくわからなかった。→参考:https://it-trend.jp/bi/article/cube
select tenpo_cd, bunrui, sum(value) from Table1 group by ROLLUP(tenpo_cd, bunrui)
bunruiがNULLの行にtenpo_cd毎の小計。
tenpo_cdとbunruiがNULLの行に全合計が出力されている。
WINDOW関数のフレーム
前後行の値を集計可能
PARTITION BYは省略可能。
ORDER BYは必須。
・構文
OVER(PARTITION BY カラム名 ORDER BY カラム名 ROWS(RANGE) ~)
1行前の行との合計値を出力するクエリ↓
select tenpo_cd , bunrui , value , sum(value)over(partition by tenpo_cd order by tenpo_cd rows between 1 preceding and current row) from Table1
・参考サイト
https://ichiroku11.hatenablog.jp/entry/2017/04/19/225831 https://zenn.dev/nanbunan/articles/ad96d04fb2e616