所以我有这个代码,这是为了抓住过去11个月的销售数据,包括当月,使它成为一整年.我需要做些什么才能将其更改为抓取过去12个月加上当月的数据?我知道我必须在右边改变一些东西(选择期间)......但不确定
在这一个中,左侧功能显示如何获得当前年份(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
Run Code Online (Sandbox Code Playgroud)
Zan*_*ane 11
哇伙计我认为你可能在这里过于复杂.如果你想获得过去X个月的数据,那么只需使用DATEADD它就是一个非常有用的功能.
那么你需要做的就是
select
YourColumns
FROM YourTable
WHERE YourDate >= DATEADD(MONTH, -13, CAST(GETDATE() AS DATE))
Run Code Online (Sandbox Code Playgroud)
你去吧.
| 归档时间: |
|
| 查看次数: |
4102 次 |
| 最近记录: |