[오라클 SQL] 오라클 KEEP 함수 사용방법
꽁스짱
오라클DB
0
1630
2021.07.14 09:58
안녕하세요.
오늘은 오라클 문법 중에서 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
|
실행 결과
위와 같이 데이터가 조회된 것을 확인하실 수 있습니다.
감사합니다.^^