【发布时间】:2015-09-18 08:46:33
【问题描述】:
是否可以在 DATEADD 间隔参数中使用 case 表达式?
select DATEADD(case c1 when 1 then HOUR when 2 then DAY end, c2, date) from T
Update1:对不起,我想在 where 子句中使用它
select * from T where DATEADD(case c1 when 1 then HOUR when 2 then DAY end, c2, date) < GETDATE()
也许还有其他选择。
提前致谢,
【问题讨论】:
-
试试这个 -
select case c1 when 1 then DATEADD(HOUR, c2, date) when 2 then DATEADD(DAY, c2, date) end from T -
我猜不是。但为什么不试试呢?
-
@KrishnrajRana 它认为它应该可以工作,但它想在 where 子句中使用 DATEADD。我正在更新示例
-
@fravelgue 我已经发布了一个答案..你可以试一试..
标签: sql sql-server case dateadd