SQL查询1-12月的数据

SELECT SUM(CASE WHEN MONTH(s.列名(日期)) = 1 THEN s.列名(金额) ELSE 0 END) AS '一月',
SUM(CASE WHEN MONTH(s.列名(日期)) = 2 THEN s.列名(金额) ELSE 0 END) AS '二月',
SUM(CASE WHEN MONTH(s.列名(日期)) = 3 THEN s.列名(金额) ELSE 0 END) AS '三月',
SUM(CASE WHEN MONTH(s.列名(日期)) = 4 THEN s.列名(金额) ELSE 0 END) AS '四月',
SUM(CASE WHEN MONTH(s.列名(日期)) = 5 THEN s.列名(金额) ELSE 0 END) AS '五月',
SUM(CASE WHEN MONTH(s.列名(日期)) = 6 THEN s.列名(金额) ELSE 0 END) AS '六月',
SUM(CASE WHEN MONTH(s.列名(日期)) = 7 THEN s.列名(金额) ELSE 0 END) AS '七月',
SUM(CASE WHEN MONTH(s.列名(日期)) = 8 THEN s.列名(金额) ELSE 0 END) AS '八月',
SUM(CASE WHEN MONTH(s.列名(日期)) = 9 THEN s.列名(金额) ELSE 0 END) AS '九月',
SUM(CASE WHEN MONTH(s.列名(日期)) = 10 THEN s.列名(金额) ELSE 0 END) AS '十月',
SUM(CASE WHEN MONTH(s.列名(日期)) = 11 THEN s.列名(金额) ELSE 0 END) AS '十一月',
SUM(CASE WHEN MONTH(s.列名(日期)) = 12 THEN s.列名(金额) ELSE 0 END) AS '十二月'
FROM 表名 AS s
WHERE YEAR(s.列名(日期)) = 2010

 

posted on 2012-11-06 13:57  tangyunping  阅读(1318)  评论(0编辑  收藏  举报