見出し画像

WINDOW 関数って結局なんなんだ...?

こんにちは。今日は WINDOW 関数ってなんなんだ!という疑問が以前からありましたので、色々試しながら理解していきたいと思います。今回はシンプルなデータで深掘りしていきます。

WINDOW_MAX 関数

WINDOW_MAX(式, [開始, 終了)
ウィンドウ内の式の最大値を返します。ウィンドは現在の行からのオフセットとして定義されます。
パーティション内の最初または最後の行からのオフセットには、FIRST()+n または LAST()-n を使用します。開始と終了を省略すると、パーティション全体が使用されます。
例:WINDOW_MAX(MAX([利益]))

WINDOW_MAX(SUM([売上]))

SUM([売上]) でメーカーごとの売上を求めている。今回は 2 メーカーなので、37,000 円と 35,000 円が集計されている。

求まった 2 つの合計値の最大値を WINDOW_MAX 関数が求めるので、37,000 円が返されている。

WINDOW_MAX(AVG([売上]))

AVG([売上]) で平均値を求めているが、理解がなかなか出来なかった…今回は各メーカーごとでまとめていますが、全部のデータを見ると、YONEX が 3 サンプルサイズ、プリンスが 2 サンプルサイズになっています。
Viz 上では各メーカーが 1 行にまとまって見えていますが、メーカー売上合計 ÷ メーカー名カウント数 で売上平均が求められています。

あとは WINDOW_MAX 関数で上記の求めた 2 つの値で最大値を返すことになります。

まとめ

WINDOW 関数はまだ他にもあるので、今後追加しています!

この記事が気に入ったらサポートをしてみませんか?