Skip to main content

LAG (SQL)

指定したウィンドウ・フレーム内の指定の行の offset 行前にある field 列の値を割り当てるウィンドウ関数。

構文

LAG(field[,offset[,default]])

説明

LAG は、offset で指定した行の field 列の値を割り当てます。既定では、ウィンドウ・フレーム内で、指定された行の offset 行前に行がない場合、LAG() は値 NULL を割り当てます。

ユーザは、値 default を含めることにより、これらの条件下で、代替値を割り当てることもできます。

引数

field

割り当てられる値を指定する列。

offset

field 列の値を取得する行を指定する整数 (オプション)。offset が指定されていない場合、この関数は、既定で、指定された行の 1 行前の field 列の値を割り当てます。

default

ウィンドウ・フレーム内で指定された行の offset 行前に行がない場合に、返す値を指定する引数 (オプション)。default が指定されていない場合、値 NULL が割り当てられます。

以下の例では、各部門内の各従業員の以前の給与を返します。

SELECT LAG(Salary) OVER (PARTITION BY Department ORDER BY Salary) FROM Company.Employee

以下の例では、offset および default 引数を指定し、各部門の以前の従業員の給与を計算します。そのような従業員が存在しない場合は、値 0 が返されます。

SELECT LAG(Salary, 1, 0) OVER (PARTITION BY Department ORDER BY Salary) FROM Company.Employee

関連項目

FeedbackOpens in a new tab