lag
분석 창 함수
적용 대상: Databricks SQL Databricks Runtime
파티션 내의 이전 행에서 expr
의 값을 반환합니다.
구문
lag( expr [, offset [, default] ] ) [ IGNORE NULLS | RESPECT NULLS ] OVER clause
인수
expr
: 모든 형식의 식입니다.offset
: 오프셋을 지정하는 선택적 INTEGER 리터럴입니다.default
:expr
과 같은 형식의 식입니다.IGNORE NULLS
또는RESPECT NULLS
: 지정된 경우IGNORE NULLS
NULL인 값expr
은 무시됩니다. 기본값은RESPECT NULLS
입니다.- OVER 절: 창 설명을 설명하는 절입니다. 참조: 창 함수.
반품
결과 형식이 expr
과 일치합니다.
offset
이 양수이면 값은 OVER 절에서 ORDER BY를 지정한 offset
에 의해 현재 행보다 앞선 행에서 시작됩니다.
오프셋 0은 현재 행의 값을 사용합니다.
음수 오프셋은 현재 행 다음 행의 값을 사용합니다.
offset
을 지정하지 않으면 바로 다음 행인 1이 기본값으로 설정됩니다.
파티션 내 지정된 오프셋에 행이 없으면 지정된 default
가 사용됩니다.
default
기본값은 NULL
입니다.
ORDER BY 절을 제공해야 합니다.
이 함수는 lead(expr, -offset, default)
와 동의어입니다.
예제
> SELECT a, b, lag(b) OVER (PARTITION BY a ORDER BY b)
FROM VALUES ('A1', 2), ('A1', 1), ('A2', 3), ('A1', 1) tab(a, b);
A1 1 NULL
A1 1 1
A1 2 1
A2 3 NULL