16章解析関数

データの量は驚異的なペースで増えており、組織はデータの意味を理解することは言うまでもなく、データをすべて格納することにすら手を焼いています。データ解析は従来、Excel、R、Pythonなどの専用のツールや言語を使ってデータベースサーバーの外で行われてきましたが、SQL言語には解析処理に役立つ関数がしっかり含まれています。従業員を営業成績に基づいてランク付けする必要がある場合や、顧客向けの会計報告書を作成していて3か月間の移動平均を計算する必要がある場合は、SQLの組み込みの解析関数を使ってそうした計算を行うことができます。

16.1 解析関数

データベースサーバーがクエリの評価に必要な手順(結合、フィルタリング、グループ化、並べ替えなど)をすべて完了すると、結果セットが完成して呼び出し元に返す準備が整います。この時点でクエリの実行をいったん止めて、メモリに格納されている状態の結果セットを調べることができるとしたら、どのような解析を行いたいでしょうか。結果セットに売上データが含まれている場合は、営業担当者や地域別に順位を計算するか、期間ごとの差の割合を計算したいかもしれません。結果セットに会計報告用のデータが含まれている場合は、おそらく項目ごとの小計と最終的な総計を計算したいと考えるでしょう。解析関数を利用すれば、これらの解析はもちろん、他の解析も行うことができます。最もよく使われている解析関数には、共通するメカニズムがあります。詳しい説明に入る前に、このメカニズムを見ておきましょう。

16.1.1 データウィンドウ

特定期間の月間売上高を生成するクエリを記述したとしましょう。たとえば次のクエリは、2005年5月から8月の期間のレンタルについて月ごとの支払い総額を計算します。 ...

Get 初めてのSQL 第3版 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.