当getdate
介于两个日期之间时,需要帮助获得第一个日期。尝试使用以下代码,但语法不正确。我想2018-09-29
从以下代码中获得输出:
DECLARE @Fromdt datetime
set @fromdt= (select case
when getdate()>='2018-09-01' and getdate()<='2018-09-13' then '2018-09-01'
when getdate()>='2018-09-15' and getdate()<='2018-09-27' then '2018-09-27'
when getdate()>='2018-09-29' and getdate()<='2018-10-10' then '2018-09-29'
when getdate()>='2018-10-12' and getdate()<='2018-10-24' then '2018-10-12'
end as frmdt from table1)
select @frmdt
在您的查询变量名称中声明和选择不一样,我只是删除from table1
它工作正常
DECLARE @Fromdt datetime
set @fromdt= (select case
when getdate()>='2018-09-01' and getdate()<='2018-09-13' then '2018-09-01'
when getdate()>='2018-09-15' and getdate()<='2018-09-27' then '2018-09-27'
when getdate()>='2018-09-29' and getdate()<='2018-10-10' then '2018-09-29'
when getdate()>='2018-10-12' and getdate()<='2018-10-24' then '2018-10-12'
end as frmdt)
select @Fromdt
下面的链接是小提琴链接,我只是在那里检查您的查询
https://dbfiddle.uk/?rdbms=sqlserver_2017&fiddle=fbdf363ef76e176c4cf34f63cf07cfab
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句