[오라클 SQL] 오라클 KEEP 함수 사용방법


안녕하세요.

 

오늘은 오라클 문법 중에서 KEEP 함수 사용 방법에 대해서 알려 드리려고 합니다.

 

KEEP이란 한글로 해석하자면 유지하다인데요.

 

오라클에서 보통 KEEP 함수를 사용하는 경우는 대개 A 컬럼을 기준으로 정렬한 후에 지정 된 행의 B 컬럼값을 추출하는 경우이럴 때 KEPP 함수를 사용합니다.


 

이렇게 이야기는 하니까 무슨 말인지 이해가 바로 안되실 수도 있는데요.

 

쉽게 아래 EMPLOYEE 테이블이 있습니다.


EMPLOYEE 테이블



위의 EMPLOYEE 테이블에서 부서별 현재 임금이 가장 높은 사람과 가장 낮은 사람의 이름을 출력을 해야 된다고 가정해 볼게요.

 

바로 위와 같은 경우가 임금이라는 컬럼 기준으로 정렬한 후에 그에 맞는 사람의 이름을 보여주는 경우입니다.

 

이러한 경우에 KEPP 함수를 이용하면 쉽게 데이터를 조회하실 수 있습니다.


SQL 문


1

2

3

4

5

6

7

 SELECT DEPARTMENT_ID,

            MIN(NAME) KEEP (DENSE_RANK FIRST ORDER BY SALARY) AS FIRST_SALARY,

            MAX(NAME) KEEP (DENSE_RANK LAST ORDER BY SALARY) AS LAST_SALARY

 FROM WIN.EMPLOYEE

 WHERE 1 = 1

 GROUP BY DEPARTMENT_ID

 

Colored by Color Scripter

cs


실행 결과



위와 같이 데이터가 조회된 것을 확인하실 수 있습니다.

 

감사합니다.^^


728x90

이 글을 공유하기

댓글

Designed by JB FACTORY