예를 들어, 데이터에서 저장된 날짜 중에서 오늘 날짜 바로 다음으로 저장된 날짜의 값을 비교해야할 때가 있다.
이럴 때 LEAD 함수를 사용한다.
LEAD
LEAD 함수는 현재 행의 다음 값을 가져올 수 있는 윈도우 함수이다.
LEAD(다음값을_가져오고_싶은_컬럼) OVER (ORDER BY 값을_정렬하고_싶은_컬럼명)
LEAD temperature OVER(ORDER BY date) AS tomorrow_temp
예를 들어, 테이블에 date라는 날짜 컬럼과 temperature온도 컬럼이 있을 때,
내일의 온도를 알고 싶을 때는 다음과 같이 쿼리를 짠다.
LEAD temperature OVER(ORDER BY date) AS tomorrow_temp
전체 구문으로 살펴보면, LEAD 구문에 의해서
다음연도의 매출 총합이 이뤄지는 NextYearTotal 열이 새로 만들어지는 것을 확인할 수 있다.
SELECT
CustomerId,
Year,
Total,
LEAD ( Total,1,0) OVER ( ORDER BY Year ) NextYearTotal
FROM
CustomerInvoices
WHERE
CustomerId = 1;
출처:
https://www.sqlitetutorial.net/sqlite-window-functions/sqlite-lead/
'SQL > SQLite' 카테고리의 다른 글
[SQLite][문제풀이] 레스토랑 요일 별 구매 금액 Top3 영수증 (0) | 2024.11.11 |
---|---|
[SQLite] JOIN (0) | 2024.10.04 |
[SQLite] CASE IF (1) | 2024.10.03 |
[SQLite] with 구문 (1) | 2024.10.03 |
[SQLite] datetime 관련 함수 (1) | 2024.10.03 |