Q&A

  • (소스포함 부탁)이문제루 회사에서 넘 무안하당...
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개의 레코드입니다.

고수님들의 조언 부탁드립니다

1  COMMENTS
  • Profile
    김재억 2000.12.16 04:11
    흘.. 저도 초허접이라 잘 모르겠는데요...



    두번째 서브쿼리의 대명사인 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개의 레코드입니다.

    > 고수님들의 조언 부탁드립니다