WITH T AS (
SELECT 'A' COL_A, '1' COL_B, 'G1' GROUPED FROM DUAL UNION ALL
SELECT 'A' COL_A, '1' COL_B, 'G1' GROUPED FROM DUAL UNION ALL
SELECT 'A' COL_A, '2' COL_B, 'G1' GROUPED FROM DUAL UNION ALL
SELECT 'B' COL_A, '2' COL_B, 'G1' GROUPED FROM DUAL UNION ALL
SELECT 'B' COL_A, '3' COL_B, 'G1' GROUPED FROM DUAL UNION ALL
SELECT 'B' COL_A, '3' COL_B, 'G1' GROUPED FROM DUAL UNION ALL
SELECT 'C' COL_A, '3' COL_B, 'G1' GROUPED FROM DUAL UNION ALL
SELECT 'D' COL_A, '9' COL_B, 'G2' GROUPED FROM DUAL UNION ALL
SELECT 'E' COL_A, '10' COL_B, 'G3' GROUPED FROM DUAL
)
위 데이터에서 COL_A 나 COL_B 둘중 하나라도 같은데이터는 동일 그룹으로 묶어서 보여주는(GROUPED 컬럼)
쿼리가 가능한지요?.
둘째, 세째행은 COL_A 가 'A' 로 같아서 그룹 'G1'이 되고, 네째행은 COL_B가 '2'로 같아서 기존그룹(G1)에
포함되고... 이런식으로 마지막 두 행만 각각 다른 그룹이 됩니다. 마지막행 col_b가 '1' 이면 그룹은 'G1' 으로 포함되야 합니다.
맘이 급해서 여기에도 질문을 올리네요.
고민을 해 봐도 해결이 안되네요. 부탁드립니다. 감사합니다.
|