所以我有这个代码,这是为了抓取最近11个月的销售数据,包括当前月份,使它成为一整年。我需要做些什么才能将其转变为抓取过去12个月和当前月份的数据?我知道我必须改变右边的东西(选择期间)...但不知道如何抓取过去13个月的数据?
在这一个,左边的函数显示如何获得当前年份(2014)减1给予2013年,但我不明白正确的功能,2是什么意思? 谢谢
period <= (
SELECT Period
FROM dbo.FiscalDates
WHERE (Date = CONVERT(varchar(10), GETDATE(), 102))) and period >= (
convert(varchar, left((
SELECT Period
FROM dbo.FiscalDates
WHERE (Date = CONVERT(varchar(10), GETDATE(), 102))),4)-1)+'-'+
convert(varchar, right((
SELECT Period
FROM dbo.FiscalDates
WHERE (Date = CONVERT(varchar(10), GETDATE(), 102))),2)))
group by prodnum, period, WhseNum
哇你为什么要转换的日期'VARCHAR' ??? – Zane
WHERE YourColumn> = DATEADD(MONTH,-13,CAST(GETDATE()AS DATE))' – Zane
@Zane,我始终使用该转换将日期转换为更易读的形式,可以导出(在此情况下,'yyyy.mm.dd')。有关各种转换,请参阅http://www.sql-server-helper.com/tips/date-formats.aspx。但是,我仍然不确定他为什么在Where子句中使用它。 – PowerUser