SELECT A."CSTCOD" 거래처,A."TELNUM" 전화번호,A.
SUM(NVL(B."PUT02_AMT2",0)) 매출액,
SUM(NVL(C."SUGUM_AMT",0)) 수금액,
SUM(NVL(B."PUT02_AMT2",0)-NVL(C."SUGUM_AMT",0))미수금
FROM "COMEM2" A,"PUT02" B, "SUGUM" C
WHERE A."CSTCOD" = B."CSTCODE"(+) <---거래처코드
AND A."CSTCOD" = C."CSTCOD"(+) <----거래처코드
GROUP BY A."CSTCOD", A."TELNUM" ,A."DAMNAME"
* 거래처 전화번호 매출액 수금액 미수금
A 123-3333 400 300 100
B . 200 10 190
이런식으로 데이터를 출력하려 합니다.
위의 SQL 문으로 하면 수금액이 이중으로 합산되서 출력됩니다.
정말 왜 그런지 원인을 모르겠어요.
그러니까 DB에 저장된 A거래처의 정확한 수금액은 150이고,
B거래처의 수금액은 5이거든요...
정말 왜 이런 현상이 일어나는지 정말로 모르겠어요
제발 도움좀 주세요...
이 세개의 테이블을 조인하면서 님이 원하시는 하나의 데이터가
그룹바이 하기전에 안쪽으로는 같은 자료가 두개가 생겼다는 말이죠...
정확하게 지금 집어드리지는 못하지만
먼저 확인하실 작업은 그룹바이를 푸시고 자료를 확인해보세요..
그럼 같은 레코드가 두개씩 들어있는게 보일겁니다..
그런후에 어떤 테이블과의 조인에서 키가 잘못 걸렸는지
두개를 같이 걸지 마시고 하나씪 걸어보세요..
그럼 발견하실수 있으리라 생각합니다...