주 컨텐츠로 이동
Workday User Guide
최종 업데이트: 2023-06-23
LAG

LAG

설명

LAG
행을 그룹화하고, 필드를 기준으로 행을 정렬하고, 그룹의 현재 행(위)에 지정된 오프셋에 있는 행의 필드 값을 반환하는 윈도우 집계 함수입니다.
다음
PARTITION BY
절은 입력 행 세트를 그룹으로 분할하는 데 사용할 필드를 결정합니다. 다음
ORDER BY
절은 파티션의 행을 정렬하는 방법을 결정합니다.
Workday는 분할 필드에 따라 입력 행을 그룹화하고, 순서 지정 필드에 따라 행을 정렬한 다음, 각 그룹의 집계 표현식(이 함수의 경우 지연)을 계산합니다.

구문

LAG
(
input_field
,
offset
,
default_value
)
OVER
(
PARTITION BY
partitioning_field
[,
partitioning_field
]
ORDER BY
ordering_field
[ASC | DESC] [,
ordering_field
[ASC | DESC]] )

반환 값

행마다
input_field
와 동일한 유형의 값을 1개 반환합니다.

입력 매개변수

input_field
필수 콘텐츠 집계 함수를 수행할 필드입니다. 모든 필드 유형을 지정할 수 있습니다.
offset
(옵션) 값을 반환할 현재 행 앞의 행 수입니다. 영(0) 이상 100 이하의 리터럴 숫자여야 합니다. 오프셋을 지정하지 않으면 Workday는 값 1을 사용합니다.
default_value
(옵션) 오프셋 행이 현재 정의된 윈도우를 벗어나거나 오프셋 행의 값이 NULL인 경우 이 함수가 반환하는 값입니다.
default_value는
input_field
와 유형이 동일해야 합니다. 기본값을 지정하지 않으면 Workday는 NULL 값을 사용합니다.
OVER()
필수입니다.
OVER
기간 내에 사용해야 합니다.
LAG
표현식
PARTITION
BYpartitioning_field
필수 콘텐츠 다음을 사용합니다.
PARTITION BY
절을 사용하여 입력 행 그룹을 분할하는 데 사용할 하나 이상의 필드를 지정합니다. 통화를 제외한 모든 필드 유형을 지정할 수 있습니다. 예: 월 필드를 파티셔닝 필드로 지정하면 Workday가 월 값이 동일한 모든 레코드를 단일 파티션으로 그룹화합니다.
ORDER BY
order_field
필수 콘텐츠 다음을 사용합니다.
ORDER BY
절을 사용하여 각 파티션 내에서 지정된 필드의 값을 사용하여 파티션의 입력 행을 정렬하는 방법을 지정합니다. 통화를 제외한 모든 필드 유형을 지정할 수 있습니다.
다음을 사용할 수 있습니다.
DESC
또는
ASC
키워드를 사용하여 각 순서 지정 필드에 대해 내림차순(높은 값에서 낮은 값, NULL이 마지막에 표시) 또는 오름차순(낮은 값부터 높은 값, NULL이 먼저 표시)으로 정렬합니다. 순서 필드의 정렬 순서를 지정하지 않으면 Workday가 자동으로 행을 오름차순으로 정렬합니다.

예를 들어 다음과 같은 행과 필드가 포함된 데이터세트가 있습니다.
row_ID
Employee_Name
Eff_Date
급여
0
고어
1/1/18
49000
2
고어
1/1/19
56000
3
고어
2017/1/1
44000
4
Freeman
1/1/18
65000
5
Freeman
2017/1/1
57000
6
Freeman
1/1/19
69000
7
Smith
1/1/18
51000
8
Smith
1/1/19
56000
9
Smith
1/1/16
44000
유효일(
Eff_Date
) 필드를 기준으로 각 직원의 행을 오름차순(ASC)으로 정렬할 수 있으므로 최근 급여가 각 파티션에서 첫 번째에 오도록 합니다.
Salary_Increase
필드에 다음 표현식을 사용하여 각 유효일 변경 사이의 급여 변동을 계산합니다.
[Salary] - (LAG([Salary], 1, [Salary]) OVER( PARTITION BY [Employee_Name] ORDER BY [Eff_Date] ASC) )
다음과 같은 결과가 표시됩니다.
row_ID
Employee_Name
Eff_Date
급여
Salary_Increase
2
고어
1/1/19
56000
7000
0
고어
1/1/18
49000
5000
3
고어
2017/1/1
44000
0
6
Freeman
1/1/19
69000
4000
4
Freeman
1/1/18
65000
8000
5
Freeman
2017/1/1
57000
0
8
Smith
1/1/19
56000
5000
7
Smith
1/1/18
51000
7000
9
Smith
1/1/16
44000
0