오라클 쿼리 질문드립니다. 0 2 74

by QueryStudy [SQL Query] ORACLE SUB QUERY 중복데이터 조회 [2018.10.11 12:43:14]


A 라는 테이블과 B라는 테이블이 있습니다.

A라는 테이블과 B라이는 테이블의 키값은 HOSTNAME 라는 컬럼으로 사용합니다.

그런데 이 HOSTNAME가 A 테이블에도 중복이 있고, B 테이블에도 중복이 있습니다.

기준이 되는 테이블은 A 테이블이 되며, 

A 테이블은 TEAM,HOSTNAME(KEY COLUMN), IP, OS, OS_TYPE가 있고

B 테이블은 TAGNAME(KEY COLUMN), NODE, DESCRIPTION 가 있습니다.

A테이블의 HOSTNAME 값은 아래와 같습니다. B테이블에도 A테이블과 같은 수의 중복데이터가 들어가있습니다.

HOSTNAME 컬럼값이 AAAA 인 컬럼은 중복없음

HOSTNAME 컬럼값이 BBBB 인 컬럼은 중복이 2건

HOSTNAME 컬럼값이 CCCC 인 컬럼은 중복이 5건

HOSTNAME 컬럼값이 DDDD 인 컬럼은 중복이 2건

이 있으면조회결과에서 아래와같은 결과로 조회되었으면 합니다.

A.HOSTNAME B.TEAM B.NODE B.DESCRIPTION A.IP A.OS
AAAA TEAM A 11111      
BBBB TEAM A 11112      
BBBB TEAM B 11113      
CCCC TEAM B 11114      
CCCC TEAM C 11115      
CCCC TEAN C 11116      
CCCC TEAM C 11117      
CCCC TEAM B 11118      
DDDD TEAM D 11119      
DDDD TEAM D 11120      

LEFT 조인을 거는경우 중복건수만큼 데이터가 불어나고

중복제거를 하면 A테이블의 건수보다 적은 건수가 나오고있습니다.

어떻게 처리해야할까요..TT

by 우리집아찌 [2018.10.11 13:27:14]

A테이블의 TEAM , HOSTNMAME , IP , OPS , OS_TYPE  내용이 전부 같다면

GROUP BY 나 DISTINCT 써서 하나 로 만들고 JOIN 하면 되지않나요?


by 마농 [2018.10.11 15:35:06]

중복이 발생된다고 해서 중복이 그냥 없어지는게 아닙니다.
막연하게 중복 제거해 주세요 하면 안됩니다.
왜 중복이 발생하는지 알아야 합니다.
중복제거 기준도 제시되어야 합니다.
원본 예시 자료도 함께 들어 주시고
원본 대비 결과표로 질문해 주세요.
위 결과예시는 빈칸이 많네요? 빈칸 없이 채워주세요.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입