日期:2014-05-16  浏览次数:20881 次

请教在ACCESS中根据指定的年求出各季度的和用SQL如何实现?
表中有字段
年           月             时间               金额
.............
2006       12           2006-12-3       43.50
2007         1           2007-1-1         16.00
2007         1           2007-1-1         23.00
2007         2           2007-2-4         42.00
2007         7           2007-7-8         83.00
2007       12           2007-12-23     45.00
.............

根据指定了年字段的时间,如何求出该年下各季度的和

想实现的效果
季度     总金额
1           344.00
2           243.00
3           455.00
4           234.00

如果某一季度没记录则省略

季度     总金额
1           344.00
2           23.00
4           234.00


------解决方案--------------------
select * from (
select 1 as 季度,sum(金额) as 总金额 where DatePart( 'q ',[时间])=1 union
select 2 as 季度,sum(金额) as 总金额 where DatePart( 'q ',[时间])=2 union
select 3 as 季度,sum(金额) as 总金额 where DatePart( 'q ',[时间])=3 union
select 4 as 季度,sum(金额) as 总金额 where DatePart( 'q ',[时间])=4)
where 总金额 <> 0