안녕하세요?
자꾸 질문 올려서 죄송합니다.
WITH TT AS
(
SELECT '1' GROUP_P, 1 SEQQ, 'AAA' TTDATA, '20120901' REGDATE, 'STAND' STAND FROM DUAL UNION ALL (기준)
SELECT '1' GROUP_P, 2 SEQQ, 'BBB' TTDATA, '20120901' REGDATE, '' STAND FROM DUAL UNION ALL
SELECT '1' GROUP_P, 3 SEQQ, 'CCC' TTDATA, '20120901' REGDATE, '' STAND FROM DUAL UNION ALL
SELECT '1' GROUP_P, 4 SEQQ, 'DDD' TTDATA, '20120901' REGDATE, '' STAND FROM DUAL UNION ALL
SELECT '2' GROUP_P, 1 SEQQ, 'AAA' TTDATA, '20120901' REGDATE, 'STAND' STAND FROM DUAL UNION ALL
SELECT '2' GROUP_P, 2 SEQQ, 'BBB' TTDATA, '20120901' REGDATE, '' STAND FROM DUAL UNION ALL
SELECT '2' GROUP_P, 3 SEQQ, 'CCC' TTDATA, '20120901' REGDATE, '' STAND FROM DUAL UNION ALL
SELECT '2' GROUP_P, 4 SEQQ, 'AAA' TTDATA, '20120901' REGDATE, '' STAND FROM DUAL UNION ALL
SELECT '2' GROUP_P, 1 SEQQ, 'AAA' TTDATA, '20120901' REGDATE, 'STAND' STAND FROM DUAL UNION ALL
SELECT '2' GROUP_P, 2 SEQQ, 'BBB' TTDATA, '20120901' REGDATE, '' STAND FROM DUAL UNION ALL
SELECT '2' GROUP_P, 3 SEQQ, 'CCC' TTDATA, '20120901' REGDATE, '' STAND FROM DUAL UNION ALL
SELECT '2' GROUP_P, 4 SEQQ, 'DDD' TTDATA, '20120901' REGDATE, '' STAND FROM DUAL UNION ALL
SELECT '2' GROUP_P, 5 SEQQ, 'EEE' TTDATA, '20120901' REGDATE, '' STAND FROM DUAL
)
SELECT *
FROM TT
WHERE 1=1
AND GROUP_P = '1'
AND SEQQ <> '1'
AND TTDATA = 'AAA'
구현 할려는게...
그룹내에서 같은 'TTDATA'가있는지 없는지 알라내는 것입니다.
'STAND ' 란 필드 값을 기준으로 그룹내에 'AAA' 값이 있는지 ,GROUP_P 1에서 먼저 찾고 , 없으면 GROUP_P 2에서
일치 하는것 찾고, 없으면 GROUP_P 3에서 찾고,,,이런 식으로
그룹내 같은 값을 찾고 싶습니다.
실력이 미천하여 어떻게 조건을 주어야 할지 모르겠습니다.
죄송합니다.
수고하세요...
|