日期:2014-05-18 浏览次数:20474 次
declare @d datetime; set @d='2012-03-31'; SELECT SUM(CASE WHEN 日期 BETWEEN CONVERT(varchar(8),@d,120)+'01' AND DATEADD(day,-1,DATEADD(month,1,CONVERT(varchar(8),@d,120)+'01')) THEN 数量 ELSE 0 END) AS 本月数量, SUM(CASE WHEN 日期 BETWEEN CONVERT(varchar(5),@d,120)+'01-01' AND CONVERT(varchar(5),@d,120)+'12-31' THEN 数量 ELSE 0 END) AS 本年数量, SUM(CASE WHEN 日期 BETWEEN CONVERT(varchar(8),@d,120)+'01' AND DATEADD(day,-1,DATEADD(month,1,CONVERT(varchar(8),@d,120)+'01')) THEN 单价*数量 ELSE 0 END) AS 本月金额, SUM(CASE WHEN 日期 BETWEEN CONVERT(varchar(5),@d,120)+'01-01' AND CONVERT(varchar(5),@d,120)+'12-31' THEN 单价*数量 ELSE 0 END) AS 本年金额 FROM tb