表结构如下
 value   date
 100     2000/2/5
 123     2000/5/6
 3213    2003/5/8
要求一句sql实现按年度统计各季度总量和年度总量
年度 1季度值 2季度值 3季度值 4季度值 年度值
2000  100     123      null    null    223
2003  null    3213     null    null    3213
答案
SELECT year([date]) AS 年份, SUM(CASE WHEN (month([date]) + 2)
      / 3 = 1 THEN [value] ELSE 0 END) AS [1季度值], SUM(CASE WHEN
(month([date]) + 2)
      / 3 = 2 THEN [value] ELSE 0 END) AS [2季度值], SUM(CASE WHEN
(month([date]) + 2)
      / 3 = 3 THEN [value] ELSE 0 END) AS [3季度值], SUM(CASE WHEN
(month([date]) + 2)
      / 3 = 4 THEN [value] ELSE 0 END) AS [4季度值], SUM([value]) AS 年度值
FROM test
GROUP BY year([date])