Mic*_*l A 2 sql t-sql sql-server sql-server-2008
我有以下(我知道在语法上是不正确的,甚至可能是荒谬的):
and lp.lease_current_stop_date
case when @lease_expiry_period = 01
then
between dateadd(MONTH, +1,
getdate())
else
between dateadd(MONTH, +2,
getdate())
Run Code Online (Sandbox Code Playgroud)
我只是想知道实现这个目标的最佳方法是什么?我正在尝试用以上方法做的是:
*当@lease_expiry_period等于01时,显示所有租约从现在起一个月内到期.当@lease_expiry_period等于02时,显示所有租约从现在起两个月后到期.*
表现说明
值得注意的是,为了简单起见,我没有在我的例子中截断日期.因为这是使用月份getdate()应该是:
Dateadd(d,0,datediff(d,0,getdate()))
Run Code Online (Sandbox Code Playgroud)
为了最好的表现.
AND lp.lease_current_stop_date BETWEEN getdate() AND dateadd(MONTH, @lease_expiry_period, getdate())
Run Code Online (Sandbox Code Playgroud)