문제
다음 SQL문에서 LEAD 함수의 동작에 대한 설명으로 가장 옳은 것은?
SQLSELECT 사원명, 입사일, LEAD(입사일, 2) OVER (ORDER BY 입사일) AS 다다음입사일 FROM 사원;
① 현재 행의 입사일보다 2일 후의 날짜를 반환한다 ② 입사일 기준 정렬에서 현재 행보다 2행 뒤의 입사일을 반환한다 ③ 현재 행의 입사일에서 2를 더한 값을 반환한다 ④ 입사일이 같은 행들 중 2번째 행의 입사일을 반환한다
정답
2번
해설
LEAD(컬럼, offset) 윈도우 함수는 현재 행에서 offset만큼 뒤(다음) 행의 해당 컬럼 값을 반환한다. LEAD(입사일, 2)는 입사일 순서로 정렬된 상태에서 현재 행보다 2행 뒤의 입사일을 가져온다. ①③은 날짜 연산으로 잘못 이해한 것이고, ④는 동일값 처리와 무관하다.