如果日期之间有24小时CASE声明

时间:2010-08-09 18:30:29

标签: sql sql-server sql-server-2005

我正在尝试创建一个案例陈述,说如果在我的2个日期参数之间已经过了1天或更少,那么就这样做,否则就这样做.....

3 个答案:

答案 0 :(得分:4)

试试这个,但这仅适用于查询

case when datediff(hh,@Date1,@Date2) < 24 then.....

如果是常规非查询T-SQL,只需使用IF语句

IF datediff(hh,@Date1,@Date2) < 24  
begin
-- stuff here
end
else
begin
-- stuff here
end

答案 1 :(得分:1)

解释“执行此操作”,因为CASE expression doesn't control flow

答案 2 :(得分:1)

SELECT CASE WHEN CAST(d1-d2 AS FLOAT) > 1 THEN '> 1 Day' ELSE '<= Day' END