简体   繁体   English

IDT-如何从当前月份获取上个月(12月)

[英]IDT - How to get previous month (December) from current Month

This is what I have so far. 到目前为止,这就是我所拥有的。 I am trying to have filter that will always display Last Full Month. 我正在尝试使过滤器始终显示上个月。 Below query works for all months except for January. 以下查询适用于除一月以外的所有月份。

DateDim_End_Date.YEAR=year(getDate())
and DateDim_End_Date.MONTHNUMBER = month(getDate())-1

I was trying something like 我在尝试类似

CASE WHEN (DateDim_End_Date.MONTHNUMBER = month(getDate())) = 1 THEN 
(DateDim_End_Date.YEAR=year(getDate())-1
and DateDim_End_Date.MONTHNUMBER = month(getDate())-1)
WHEN DateDim_End_Date.MONTHNUMBER = month(getDate())) != 1 THEN 
(DateDim_End_Date.YEAR=year(getDate())
and DateDim_End_Date.MONTHNUMBER = month(getDate())-1)
END

It does not have to be CASE statement to solve this, it was just my initial approach Thanks in advance. 不必使用CASE语句即可解决此问题,这只是我最初的方法。

You can do something like: 您可以执行以下操作:

DateDim_End_Date.YEAR=year(getDate())
and DateDim_End_Date.MONTHNUMBER = month(DATEADD(MONTH, -1, getDate()))

That will solve the issue with January, since you are now first subtracting a month from a date before determining what the new month is. 这将解决一月的问题,因为您现在首先要从日期中减去一个月,然后再确定新的月份。

It is much easier to store dates in a single date/datetime column though. 不过,将日期存储在单个date / datetime列中要容易得多。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM