Q&A

  • 고수님들~~~sql 문좀 꼭 봐주세요.
SELECT B.신규일자, B.고객코드, B.판매담당, B.성명, B.회사명,

B.판매전화,

sum((A.매출금액+A.보증금)-A.수금액)as 미수금

FROM 고객원장 A, 고객 B

WHERE A.고객코드 = B.고객코드

And 미수금 > 6000

Group By B.신규일자, B.고객코드, B.판매담당, B.성명, B.회사명, B.판매전화



요기서 미수금 필드가 없다는 에러가 나는데 왜이럴까요??

어디서 문제 인지 알수가 없습니다.

sum한후에는 where절을 사용할수가 없나요??



3  COMMENTS
  • Profile
    지나가는 사람 2000.11.08 13:46
    초보가 wrote:

    > SELECT B.신규일자, B.고객코드, B.판매담당, B.성명, B.회사명,

    > B.판매전화,

    > sum((A.매출금액+A.보증금)-A.수금액)as 미수금

    > FROM 고객원장 A, 고객 B

    > WHERE A.고객코드 = B.고객코드

    > And 미수금 > 6000

    > Group By B.신규일자, B.고객코드, B.판매담당, B.성명, B.회사명, B.판매전화

    >

    > 요기서 미수금 필드가 없다는 에러가 나는데 왜이럴까요??

    > 어디서 문제 인지 알수가 없습니다.

    > sum한후에는 where절을 사용할수가 없나요??

    >



    미수금은 아직 많들어 지지 않은 필드 이기 때문에 Where 절에서

    (매출금액+보증금)-수금액 로 써야 하고요..



    위의 내용을 아래와 같이 하면 더 좋을 것 같은데.. 참고 바랍니다..





    SELECT B.신규일자,B.고객코드,B.판매담당,

    B.성명,B.회사명,B.판매전화,A.미수금

    FROM 고객원장 A,

    ( SELECT 고객코드,sum((매출금액+보증금)-수금액)as 미수금

    FROM 고객

    WHERE (매출금액+보증금)-수금액 > 6000

    Group By 고객코드 ) As B

    WHERE A.고객코드 = B.고객코드





  • Profile
    지나가는 사람 2000.11.08 13:58
    지나가는 사람 wrote:

    > 초보가 wrote:

    > > SELECT B.신규일자, B.고객코드, B.판매담당, B.성명, B.회사명,

    > > B.판매전화,

    > > sum((A.매출금액+A.보증금)-A.수금액)as 미수금

    > > FROM 고객원장 A, 고객 B

    > > WHERE A.고객코드 = B.고객코드

    > > And 미수금 > 6000

    > > Group By B.신규일자, B.고객코드, B.판매담당, B.성명, B.회사명, B.판매전화

    > >

    > > 요기서 미수금 필드가 없다는 에러가 나는데 왜이럴까요??

    > > 어디서 문제 인지 알수가 없습니다.

    > > sum한후에는 where절을 사용할수가 없나요??

    > >



    미수금은 아직 많들어 지지 않은 필드 이기 때문에 Where 절에서

    (매출금액+보증금)-수금액 로 써야 하고요..



    위의 내용을 아래와 같이 하면 더 좋을 것 같은데.. 참고 바랍니다..





    SELECT B.신규일자,B.고객코드,B.판매담당,

    B.성명,B.회사명,B.판매전화,A.미수금

    FROM 고객 as B,

    ( SELECT 고객코드,sum((매출금액+보증금)-수금액)as 미수금

    FROM 고객원장

    Group By 고객코드 ) As A

    WHERE (A.고객코드 = B.고객코드) and (A.미수금 > 6000)





  • Profile
    임형호 2000.11.08 23:19
    group by 를 사용할때에는 group by 다음에 기입되는 필드만을 select 다음에 기입할수있습니다. 물론 sum, avg, min, max등의 함수들과 함께요.

    테스트를 해볼수가 없어서...확실한지는 모르지만...

    group by 다음에 where 문을 사용할려면 where 대신에 having 절을 사용해보세요. 사용법은 책을 참조하세요. 그럼.





    지나가는 사람 wrote:

    > 지나가는 사람 wrote:

    > > 초보가 wrote:

    > > > SELECT B.신규일자, B.고객코드, B.판매담당, B.성명, B.회사명,

    > > > B.판매전화,

    > > > sum((A.매출금액+A.보증금)-A.수금액)as 미수금

    > > > FROM 고객원장 A, 고객 B

    > > > WHERE A.고객코드 = B.고객코드

    > > > And 미수금 > 6000

    > > > Group By B.신규일자, B.고객코드, B.판매담당, B.성명, B.회사명, B.판매전화

    > > >

    > > > 요기서 미수금 필드가 없다는 에러가 나는데 왜이럴까요??

    > > > 어디서 문제 인지 알수가 없습니다.

    > > > sum한후에는 where절을 사용할수가 없나요??

    > > >

    >

    > 미수금은 아직 많들어 지지 않은 필드 이기 때문에 Where 절에서

    > (매출금액+보증금)-수금액 로 써야 하고요..

    >

    > 위의 내용을 아래와 같이 하면 더 좋을 것 같은데.. 참고 바랍니다..

    >

    >

    > SELECT B.신규일자,B.고객코드,B.판매담당,

    > B.성명,B.회사명,B.판매전화,A.미수금

    > FROM 고객 as B,

    > ( SELECT 고객코드,sum((매출금액+보증금)-수금액)as 미수금

    > FROM 고객원장

    > Group By 고객코드 ) As A

    > WHERE (A.고객코드 = B.고객코드) and (A.미수금 > 6000)

    >

    >