MSSQL获取12月前到上月每个月的平均值。这句话看起来很难理解。但这么一说就好理解了。当前日期的月份是10月。要求获取2013年10月至2014年9月每个月的字段平均值。开始以为挺简单的。结果查了半天总是不对。然后结合各种百度搜索结果和谷歌搜索结果。终于得到了想要的结果了。代码如下。

select
YEAR(addtime) as nian,
MONTH(addtime) as yue,
AVG(shoujia) as num
from Nt_Chushou
where ShTF=1 and Jycg=0
and AddTime between dateadd(month,-12,getdate()) and DATEADD(MONTH,-1,GETDATE())
group by year(AddTime), MONTH(addtime)
order by nian

以上代码SQL2008 R2测试通过