WITH EMP AS
(
SELECT 'U90001' UIDX, '홍길동' UNAME, '8005121612333' JUMIN_NO, '1' GUBUN, '1900123' PID FROM dual --동일인
union all SELECT 'U90001' UIDX, '홍길동' UNAME, '8005121612333' JUMIN_NO, '1' GUBUN, '2015020' PID FROM dual --동일인
union all SELECT '000000' UIDX, '황희진' UNAME, '6710102051555' JUMIN_NO, '1' GUBUN, '1986029' PID FROM dual
union all SELECT '000000' UIDX, '황희진' UNAME, '8005021612333' JUMIN_NO, '1' GUBUN, '2014088' PID FROM dual
union all SELECT 'U90008' UIDX, '나영석' UNAME, '7904031133200' JUMIN_NO, '1' GUBUN, '2012012' PID FROM dual
)
select UIDX, UNAME,JUMIN_NO,GUBUN,PID
from EMP
where uname = :uname --들어오는 값
and substr(jumin_no, 1,6) = :birthdt --들어오는 생년월일 ex.800512
==================================================================================
결과가 나오고 싶은것은 결과의 컬럼값을 비교하는 것인데요... (오라클10.* 버전입니다.)
1) 나오는 건이 1건인경우 UIDX, UNAME, JUMIN_NO, GUBUN, PID select출력
2) 나오는 건이 2건이상인 경우는
-2건이상인 경우 UIDX, UNAME, JUMIN_NO가 같으면 동일인이라 판단해 UID, UNAME, JUMIN_NO, GUBUN, PID select
-2건이상인 경우 UIDX, UNAME, JUMIN_NO가 같지않으면 동일인아님이라 판단해 '동일인아님' 구분값 select
하는 것입니다.
이것을 어떻게 해야 할지 모르겠네요.. 프로그램으로 처리해야 할 부분이 아니고 sql로 해결해야 하는 부분이라서...
도움좀 주세요!! |