Article Outline
🔍 WINDOW句
TOC
Collection Outline
句(節)
演算子
関数
入門 @Udemy
DS100ノック
ML
アクセス解析
|| WINDOW句
WINDOW句は名前付きウィンドウのリストを定義します。
名前付きウィンドウは、分析関数を使用するテーブル内の行のグループを表します。 名前付きウィンドウは、ウィンドウ指定で定義するか、別の名前付きウィンドウを参照することが可能です。
別の名前付きウィンドウを参照している場合、参照されるウィンドウは、参照するウィンドウよりも前に定義されている必要があります。
| 実行順序
WINDOW句を使用したクエリの評価は、通常、次の順序で完了します。
- FROM
- WHERE
- GROUP BY と集計
- HAVING
- WINDOW ← ココ!
- QUALIFY
- DISTINCT
- ORDER BY
- LIMIT
/* 同様の処理は纏められる */
select
member
, sum(amount) over w as total_amount
, count(amount) over w as number_of_amount
from
raw_table
window
w as (partition by member order by date)
group by
member
;
/* 組み換え可能 */
select
member
, sum(amount) over a as total_amount
, count(amount) over b as number_of_amount
, count(amount) over(c rows between PRECEDING and FOLLOWING) as number_of_amount
from
raw_table
window
a as (partition by member order by date)
, b as (partition by member order by date desc, class_a)
, c as b --こんなのもできる
group by
member
;
cf.
- WINDOW句 -GoogleCloud