테이블 구조 및 내용은 다음과 같습니다.

SEQ, KIND, DATE, ITEMCODE, EA, GUM

1, 1, 16.01.01, 1153, 50, 50000

1, 1, 16.01.01, 1154, 30, 30000


출력하고자 하는 내용은 다음과 같이  ITEMCODE별로 각 월별로 합계된 수량, 금액을 구하고 있습니다.


품목코드, 1월수량, 1월금액, 2월수량, 2월금액.......12월수량, 12월금액

1153, 50, 50000, 0, 0, .......0,0

1154, 30, 30000, 0, 0, .......0,0


원하는 결과값을 내기 위한 현재 쿼리는 다음과 같습니다.


다음 쿼리를 좀더 줄일수 있을까요?


  select ITEMCODE,
  SUM(ISNULL(CASE WHEN WOL='01' THEN EA END, 0)) AS '1월 수량',
  SUM(ISNULL(CASE WHEN WOL='01' THEN GUM END, 0)) AS '1월 금액',
  SUM(ISNULL(CASE WHEN WOL='02' THEN EA END, 0)) AS '2월 수량',
  SUM(ISNULL(CASE WHEN WOL='02' THEN GUM END, 0)) AS '2월 금액',
  SUM(ISNULL(CASE WHEN WOL='03' THEN EA END, 0)) AS '3월 수량',
  SUM(ISNULL(CASE WHEN WOL='03' THEN GUM END, 0)) AS '3월 금액',
  SUM(ISNULL(CASE WHEN WOL='04' THEN EA END, 0)) AS '4월 수량',
  SUM(ISNULL(CASE WHEN WOL='04' THEN GUM END, 0)) AS '4월 금액',
  SUM(ISNULL(CASE WHEN WOL='05' THEN EA END, 0)) AS '5월 수량',
  SUM(ISNULL(CASE WHEN WOL='05' THEN GUM END, 0)) AS '5월 금액',
  SUM(ISNULL(CASE WHEN WOL='06' THEN EA END, 0)) AS '6월 수량',
  SUM(ISNULL(CASE WHEN WOL='06' THEN GUM END, 0)) AS '6월 금액',
  SUM(ISNULL(CASE WHEN WOL='07' THEN EA END, 0)) AS '7월 수량',
  SUM(ISNULL(CASE WHEN WOL='07' THEN GUM END, 0)) AS '7월 금액',
  SUM(ISNULL(CASE WHEN WOL='08' THEN EA END, 0)) AS '8월 수량',
  SUM(ISNULL(CASE WHEN WOL='08' THEN GUM END, 0)) AS '8월 금액',
  SUM(ISNULL(CASE WHEN WOL='09' THEN EA END, 0)) AS '9월 수량',
  SUM(ISNULL(CASE WHEN WOL='09' THEN GUM END, 0)) AS '9월 금액',
  SUM(ISNULL(CASE WHEN WOL='10' THEN EA END, 0)) AS '10월 수량',
  SUM(ISNULL(CASE WHEN WOL='10' THEN GUM END, 0)) AS '10월 금액',
  SUM(ISNULL(CASE WHEN WOL='11' THEN EA END, 0)) AS '11월 수량',
  SUM(ISNULL(CASE WHEN WOL='11' THEN GUM END, 0)) AS '11월 금액',
  SUM(ISNULL(CASE WHEN WOL='12' THEN EA END, 0)) AS '12월 수량',
  SUM(ISNULL(CASE WHEN WOL='12' THEN GUM END, 0)) AS '12월 금액'
  FROM (select ITEMCODE, substring(DDATE,4,2) as 'WOL', EA, GUM from 원본테이블 where KIND = '1') a
  group by ITEMCODE

No. Subject Author Date Views
Notice 2023년 1월 - SQLER의 업데이트 강좌 리스트 코난(김대우) 2023.01.02 2128
9149 월별 ,년별 통계쿼리 질문 [4] 다자녀아빠 2016.01.29 2979
9148 이런 시스템에 트리거 ? CDC (Change Data Capture)? 어떤게..좋을까요? [1] 둥이가이 2016.01.29 3263
9147 hashbytes() 질문 [2] 형님 2016.01.29 3114
9146 MS SQL FAIL OVER시 쿼리에 대해서... [1] 그늘 2016.01.29 3315
9145 MySQL -> MS-SQL로 데이터베이스 마이그레이션 궁금증입니다. [2] Gusto 2016.01.28 3970
9144 다국어(NVARCHAR) 에 대한 CHECKINDEX 문의 드립니다 [4] 구로동라이더 2016.01.28 3122
9143 무조건 프로시저로 만드는게 최선인가요? [4] 문상연 2016.01.27 2460
9142 SQL2012 SSMS에서 리프레쉬 단축키(F5) 질문입니다. [1] sincie 2016.01.27 2303
» 아래 쿼리를 더 줄일수 있는 방법이 있을까요? [3] 뇽이 2016.01.27 2232
9140 아래 쿼리 질문 추가 보충입니다. [2] 양재동살아요 2016.01.27 1961
9139 문자열 union all관련 문의 드립니다. [2] 나는짱이야 2016.01.27 2143
9138 랜덤함수를 이용하여 특정일자를 지정하는 쿼리 문의 드립니다. 호짱 2016.01.27 1815
9137 호환성질문입니다. 희망나라 2016.01.26 1880
9136 윈도우10 설치문의 [1] SQL_chobo 2016.01.26 4077
9135 중복검사 쿼리 질문 드립니다. [2] 양재동살아요 2016.01.26 2206
9134 그룹의 특정 범위 지정은 어떻게 해야 할까요? [12] Gusto 2016.01.26 3262
9133 SSIS Script Task에서 DLL 사용 [2] 에슈리온 2016.01.25 2196
9132 sql 2012 버전에는 프로파일러가 없는건가요??? [4] 봉자 2016.01.25 2572
9131 보관함 기능을 만들고 싶은데[요? [4] 문상연 2016.01.25 1947
9130 인덱스를 다른 파일그룹에 생성 질문입니다. [1] sincie 2016.01.25 2045





XE Login