メインメニューを開く

SQL において、窓関数もしくはウィンドウ関数 (: window function) は結果セットを部分的に切り出した領域に集約関数を適用できる、拡張された SELECT ステートメントである。SQL:2003 以降の標準SQLで規定されている。分析関数やOLAP機能と呼ばれる場合もある。

以下の例は、同じ city ごとに、その人口を集計している。

sum(population) OVER( PARTITION BY city )

集約を行う領域は OVER 句により制御できる。 以下の構文を持ち、結果セットの分割と順序を制御できる。 ORDER BY 句は row_number 関数のような順序の影響を受ける処理に対して使用する。

<OVER_CLAUSE> :: =
   OVER ( [ PARTITION BY <expr>, ... ]
          [ ORDER BY <expression> ] )

外部リンク編集