WINDOW句 (SQL)
複数のウィンドウ関数が同じフレームを使うとき、名前付きウィンドウ定義を書く SQL 構文。WINDOW w AS (PARTITION BY dept ORDER BY salary) と定義し、RANK() OVER w, LAG(salary) OVER w のように使う。
OVER 句のコピペを減らせる。同じフレームで5〜10個のウィンドウ集計を並べる複雑なレポートで効果が大きい。PostgreSQL と Oracle は完全対応、MySQL は 8.0 から対応、SQL Server には名前付きウィンドウがない。フレーム句(累計なら ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)も名前付きウィンドウに含められる。性能面では、同じフレームのウィンドウ関数どうしで、プランナが計算を共有できることが多い。