SELECT TEST1.C_UPJONG0 AS CUPJONG , TEST2.CHETABSE AS CHETBASE FROM
(SELECT C_UPJONG0 , BMSTCODE , YYMM , SUN_DATE FROM HWANG.BL209T
WHERE YYMM >= '199901') TEST1,
(SELECT C_UPJONG , SUM(TAX_BASE)AS CHETABSE FROM HWANG.BL205T
WHERE YYMM >= '199901' GROUP BY C_UPJONG ) TEST2
WHERE TEST1.YYMM = TEST2.YYMM
CUPJONG CHETBASE
001 1000 // 정상
002 1000 // 0 으로 돼야함
003 1000 // 0 으로 돼야함
위와 같이 하면 TEST1 에 해당돼는결과는 3개의 레코드
TEST2 에 해당돼는결과는 1개의 레코드입니다.
고수님들의 조언 부탁드립니다
두번째 서브쿼리의 대명사인 TEST2를 사용해 WHERE 절의 비교구문을 사용했자나요?
근데... TEST2의 그 어느부분에도 YYMM 을 호출한것이 안보이네염....
(SELECT C_UPJONG , SUM(TAX_BASE)AS CHETABSE FROM HWANG.BL205T
WHERE YYMM >= '199901' GROUP BY C_UPJONG ) TEST2
이것을
(SELECT C_UPJONG , SUM(TAX_BASE)AS CHETABSE, YYMM FROM HWANG.BL205T
> WHERE YYMM >= '199901' GROUP BY C_UPJONG ) TEST2
이렇게 고쳐야 안되나요?
이러면 오류가 안나나요? 근데 오류없이 어떤 값을 보내었네요..
암튼 이것이 결정적인 문제같은데요?
아닌가? 흘... Query를 1년간 안다루었더니... 완죤히 초 허접 풀빵이 되어버렸네요.
죄송합니다.
hnc wrote:
> SELECT TEST1.C_UPJONG0 AS CUPJONG , TEST2.CHETABSE AS CHETBASE FROM
>
> (SELECT C_UPJONG0 , BMSTCODE , YYMM , SUN_DATE FROM HWANG.BL209T
> WHERE YYMM >= '199901') TEST1,
>
> (SELECT C_UPJONG , SUM(TAX_BASE)AS CHETABSE FROM HWANG.BL205T
> WHERE YYMM >= '199901' GROUP BY C_UPJONG ) TEST2
>
> WHERE TEST1.YYMM = TEST2.YYMM
>
>
> CUPJONG CHETBASE
> 001 1000 // 정상
> 002 1000 // 0 으로 돼야함
> 003 1000 // 0 으로 돼야함
>
> 위와 같이 하면 TEST1 에 해당돼는결과는 3개의 레코드
> TEST2 에 해당돼는결과는 1개의 레코드입니다.
> 고수님들의 조언 부탁드립니다