Q&A

  • sql 문 집계에 대해서..
먼저 테이블을 말씀드리면.. table1이라는 테이블에

cnt pummung gubun number

-----------------------------

1 a 1 100

2 a 2 50

3 b 1 70

4 a 2 30



먼저 4개의 필드 중 cnt는 카운터 필드구요..

위 테이블에서 gubun = 1 이면 납품, gubun = 2 이면 반품 입니다.

그런데 제품 별로 집계를 내려니,

납품 - 반품 해서 a 제품은 합계가 20, b 제품은 70 이란 답이 나와야 하는데.

프로그램밍으로는 제품별 구분해서 납품한것에서 반품한 것을 빼주면 되는데..

sql문으로는 위의 집계를 처리할 수가 없을까요?



할 수가 있다면 sql문을 어떻게 써야 하는지 꼭좀 부탁드립니다.

그럼, 즐거운 시간 되세요.



* 아래 세션에서 login창 질문은 새로 답변 올려 주신 분께서 얘기 하신대로 해봐도..

여전 하더군요.. 정녕 해결책이 없는 것일까나... T.T

것보다는 나의 무식일 것 같네요.. -_-!

제 질문에 신경써주신 분들께는 먼저 감사드리구요. 이질문 뿐 아니라

앞으로도 많은 부탁드림니다!

그럼, 즐프하세용!

1  COMMENTS
  • Profile
    행인4 2001.06.12 01:41
    다음부터는 DB종류도 적어주면 도움이 되겠는데요.

    오라클의 경우입니다.

    select pummung , sum(decode(gubun,1,number, number*(-1)) ) as sum_qty

    from table1

    group by pummung



    이렇게 하면 될것 같은데요.



    델초보 wrote:

    > 먼저 테이블을 말씀드리면.. table1이라는 테이블에

    > cnt pummung gubun number

    > -----------------------------

    > 1 a 1 100

    > 2 a 2 50

    > 3 b 1 70

    > 4 a 2 30

    >

    > 먼저 4개의 필드 중 cnt는 카운터 필드구요..

    > 위 테이블에서 gubun = 1 이면 납품, gubun = 2 이면 반품 입니다.

    > 그런데 제품 별로 집계를 내려니,

    > 납품 - 반품 해서 a 제품은 합계가 20, b 제품은 70 이란 답이 나와야 하는데.

    > 프로그램밍으로는 제품별 구분해서 납품한것에서 반품한 것을 빼주면 되는데..

    > sql문으로는 위의 집계를 처리할 수가 없을까요?

    >

    > 할 수가 있다면 sql문을 어떻게 써야 하는지 꼭좀 부탁드립니다.

    > 그럼, 즐거운 시간 되세요.

    >

    > * 아래 세션에서 login창 질문은 새로 답변 올려 주신 분께서 얘기 하신대로 해봐도..

    > 여전 하더군요.. 정녕 해결책이 없는 것일까나... T.T

    > 것보다는 나의 무식일 것 같네요.. -_-!

    > 제 질문에 신경써주신 분들께는 먼저 감사드리구요. 이질문 뿐 아니라

    > 앞으로도 많은 부탁드림니다!

    > 그럼, 즐프하세용!