윈도우 함수에서 범위를 정의하거나 행의 위치를 나타내는 데 사용되는 키워드 정리
LAG()
현재 행을 기준으로 이전의 행을 가리켜 값을 가져오는 키워드
LAG(column, offset, default)
-- column : 값을 가져올 컬럼명,
-- offset : 몇 개의 행 이전의 값을 가져올건지 ( 3행 전의 값 등등.. )
-- default : 지정된 행이 없을때 반환할 기본값 설정
LEAD() / READ()
현재 행을 기준으로 이후 행을 가리켜 값을 가져오는 키워드
LEAD(column, offset, default)
-- column : 값을 가져올 컬럼명,
-- offset : 몇 개의 행 이후의 값을 가져올건지 ( 3행 후의 값 등등.. )
-- default : 지정된 행이 없을때 반환할 기본값 설정
PRECEDING과 FOLLOWING은 범위를 지정해 범위의 행 모두를 가리킨다는 점에서
위의 두 키워드와 차이가 있다
PRECEDING
기준 행 이전 행들을 가리키는 데 사용되는 키워드
RANGE BETWEEN 10 PRECEDING AND CURRENT ROW
-- 현재 행을 기준으로 이전의 10개 행을 가리킴
FOLLOWING
기준 행 이후의 행들을 가리키는 데 사용되는 키워드
RANGE BETWEEN CURRENT ROW AND 10 FOLLOWING
-- 현재 행을 기준으로 이후의 10개 행을 가리킴
두 키워드를 합쳐서도 사용 가능함
RANGE BETWEEN 10 PRECEDING AND 10 FOLLOWING
'자격증고나리 > ⚽ SQLD 슈웃' 카테고리의 다른 글
[SQL] 순위를 구하는 함수 (RANK, DENSE_RANK, ROW_NUMBER) (1) | 2023.09.07 |
---|---|
[SQL] 상위 n개를 선택하는 윈도우 함수 (LIMIT,TOP,ROWNUM, FETCH FRIST) (0) | 2023.09.07 |
[SQL] NOT EXISTS (1) | 2023.09.06 |
[SQL] 데이터베이스의 JOIN (0) | 2023.09.06 |
데이터베이스의 함수 (1) | 2023.09.05 |