문제 링크 : https://velog.io/@yooha9621/SQLP실기문제-파티셔닝24번
SQL > SELECT a.*
(SELECT NVL (MAX('Y'), 'N')
FROM 자료전송이력
WHERE 상담원ID = a. 상담원ID
AND 상담일시 = a. 상담일시)
AND ROWNUM = 1) 자료전송여부
FROM (SELECT 상담원ID, 상담일시, 상담접촉구분코드
, 연락전화번호, 통화자명, 호식별번호, 상담처리상태코드, 조직ID
FROM 고객상담
WHERE 고객번호 = :cust_num
ORDER BY 고객번호 DESC, 상담일시 DESC) a
WHERE ROWNUM <= 10;
SQL > SELECT a.*
(SELECT NVL (MAX('Y'), 'N')
FROM 자료전송이력
WHERE 상담원ID = a. 상담원ID
AND 상담일시 = a. 상담일시
AND 등록일시 >= 상담일시
AND ROWNUM = 1) 자료전송여부
FROM (SELECT 상담원ID, 상담일시, 상담접촉구분코드
, 연락전화번호, 통화자명, 호식별번호, 상담처리상태코드, 조직ID
FROM 고객상담
WHERE 고객번호 = :cust_num
ORDER BY 고객번호 DESC, 상담일시 DESC) a
WHERE ROWNUM <= 10;
🍎 정리
- 자료전송이력을 조회할 때 파티션만 조회할 수 있도록 '등록일시' 조회 조건을 추가한다.