728x90
반응형
FIRST_VALUE(컬럼명): 컬럼의 첫번째 값
LAST_VALUE(컬럼명): 컬럼의 마지막 값
SELECT
EMPLOYEE_ID
,DEPARTMENT_ID
,SALARY
,FIRST_VALUE(SALARY) IGNORE NULLS OVER (PARTITION BY DEPARTMENT_ID ORDER BY SALARY) AS LOW_SAL
,LAST_VALUE(SALARY) IGNORE NULLS OVER (PARTITION BY DEPARTMENT_ID ORDER BY SALARY) AS HIGH_SAL_1
,LAST_VALUE(SALARY) IGNORE NULLS OVER (PARTITION BY DEPARTMENT_ID ORDER BY SALARY
RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING ) AS HIGH_SAL_2
FROM EMPLOYEES
WHERE DEPARTMENT_ID IN (10,20,30) ORDER BY DEPARTMENT_ID, SALARY
;
참고) Window Function의 Default 값은 RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
이기 때문에, HIGH_SAL_1과 HIGH_SAL_2 값에 차이가 발생하는 것이다.
728x90
반응형
'개발공부 일지 > 오라클' 카테고리의 다른 글
오라클) 실행계획에서 VIEW Operator - 뷰 연산자 (0) | 2024.09.01 |
---|---|
오라클) INSERT ALL 구문 - Pivoting Insert(피봇) (0) | 2024.08.26 |
오라클) 윈도우 함수(Window Function)의 Interval 키워드 사용법 (0) | 2024.08.26 |
오라클) 윈도우 함수(Window Function)의 ROW_NUMBER() 함수를 역순으로 출력하기 (0) | 2024.08.26 |
오라클) Index Full Scan (0) | 2024.08.25 |
댓글