database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Q&A 31037 게시물 읽기
No. 31037
월별 통계를 내고 싶은데요
작성자
호야
작성일
2017-03-14 17:52:56
조회수
1,157

 테이블(TAB)에는 날짜(CONDATE)와 건수(CNT)가 있습니다.
예들 들어 올해 월별 건수를 구할 때
4월부터는 아직 데이터가 없으니까 0으로 표시되게 하고 싶은데요

1월   2월  3월  4월 ..... 12월
10    15    10     0............0

이런식으로 월항목도 함께 출력하려면 쿼리를 어떻게 짜야 할지.. 
고수님들의 조언 부탁드립니다.
 

이 글에 대한 댓글이 총 2건 있습니다.

SELECT IFNULL(SUM(CASE mm WHEN '01' THEN cnt END), 0) "01"
     , IFNULL(SUM(CASE mm WHEN '02' THEN cnt END), 0) "02"
     , IFNULL(SUM(CASE mm WHEN '03' THEN cnt END), 0) "03"
     , IFNULL(SUM(CASE mm WHEN '04' THEN cnt END), 0) "04"
     , IFNULL(SUM(CASE mm WHEN '05' THEN cnt END), 0) "05"
     , IFNULL(SUM(CASE mm WHEN '06' THEN cnt END), 0) "06"
     , IFNULL(SUM(CASE mm WHEN '07' THEN cnt END), 0) "07"
     , IFNULL(SUM(CASE mm WHEN '08' THEN cnt END), 0) "08"
     , IFNULL(SUM(CASE mm WHEN '09' THEN cnt END), 0) "09"
     , IFNULL(SUM(CASE mm WHEN '10' THEN cnt END), 0) "10"
     , IFNULL(SUM(CASE mm WHEN '11' THEN cnt END), 0) "11"
     , IFNULL(SUM(CASE mm WHEN '12' THEN cnt END), 0) "12"
  FROM (SELECT DATE_FORMAT(condate, '%m') mm
             , SUM(cnt) cnt
          FROM t
         WHERE condate >= '2017-01-01'
           AND condate <  '2018-01-01'
         GROUP BY DATE_FORMAT(condate, '%m')
        ) a
;

마농(manon94)님이 2017-03-15 09:06:59에 작성한 댓글입니다.

마농님 진심 감사드립니다 (__) 

호야님이 2017-03-15 09:37:02에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
31040책 추천 부탁드립니다. [2]
goblin
2017-04-05
729
31039[질문]여러개의 필드를 분리해서 나열? [4]
감사합니다
2017-04-03
771
31038[질문]연속데이타 가져오기 부탁드립니다. [2]
홍성욱
2017-03-28
788
31037월별 통계를 내고 싶은데요 [2]
호야
2017-03-14
1157
310362개 필드 group by SQL 질문 드립니다. [1]
가보자후딱
2017-03-14
1124
31035[질문]같은 테이블의 다른 Row값으로 업데이트 하기 [2]
조동건
2017-03-05
1201
31034replication 구성중 slave 복구 관련 문의드립니다. [2]
문정준
2017-03-02
1244
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2017 DSN, All rights reserved.
작업시간: 0.065초, 이곳 서비스는
	PostgreSQL v9.6.2으로 자료를 관리합니다