「SQLの理解:ウィンドウ関数の始め方」
Understanding SQL Getting Started with Window Functions
SQLウィンドウ関数を使用して集計をさらに活用する方法
はじめに
SQLでデータを集計する際、ウィンドウ関数はGROUP BY
句と組み合わせて使用される集計よりも柔軟性があります。両方のアプローチは似たような機能を提供しますが、ウィンドウ関数は出力の構造が異なります。具体的には、ウィンドウ関数はテーブル行のグループ化またはパーティションによって関連する複数の行に対して操作を適用します。そして、非ウィンドウ関数とは異なり、行が1つの出力行に統合されず、すべての行は別々のアイデンティティを保持し、出力テーブルに存在します。
この動作は通常の集計とはかなり異なり、単純なサマリ統計を超えた分析ツールボックスを大幅に拡張することができます。たとえば、ウィンドウ関数を使用すると、ランニング合計、移動平均、さらにはZスコアなどの統計的な指標を計算することができます。
この投稿では、SQLウィンドウ関数の構造と基本的な機能について見ていきます。ここではやや初歩的な内容を扱っているため、ウィンドウ関数について知らない方や使用経験が限られている方にとって、興味深いものになるでしょう。
この投稿では、1930年から2022年までのFIFAワールドカップ大会に関するいくつかの高レベルなサマリデータを使用します。順位や統計データはWikipediaから取得し、Creative Commons Attribution Share-Alikeライセンス(CC-BY-SA)で提供されています。データと関連情報はこちらで入手できます。このブログでは、このテーブルを独自のPostgresSQLデータベースにインポートしましたが、一緒に進める場合は、私のGitリポジトリからテーブルのコピーを取得できます。私のデータベースでは、このテーブルはworld_cup_placings
と呼ばれ、以下に出力が表示されます:
|year|start_date|end_date|host_country |first_place |second_place |third_place |fourth_place|total_teams|matches_played|total_goals|total_attendance||----|----------|--------|-------------|------------|--------------|-------------|------------|-----------|--------------|-----------|----------------||1930|13/07/30 |30/07/30|Uruguay |Uruguay |Argentina |United…
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles