gpt4 book ai didi

sql - SQL Server 中的 DateDiff 舍入

转载 作者:行者123 更新时间:2023-12-02 00:36:36 25 4
gpt4 key购买 nike

我有一个表格,其中包含运行特定功能的最后日期/时间。在我的存储过程中,如果当前日期/时间距上次运行时间超过一个小时,我想返回 1,如果小于则返回 0。目前我有这个:

IF((SELECT TOP 1 DATEDIFF(HH,LastRunDateTime,GETDATE()) FROM myTable) >= 1)
BEGIN
-- run statement to update LastRunDateTime
return 1;
END
ELSE
return 0;
END

舍入如何与 DateDiff 一起使用?

如果已经超过一个小时,是否有更好的方法只返回 1?

最佳答案

使用:

SELECT CASE 
WHEN DATEDIFF(hh, LastRunDateTime, GETDATE()) >= 1 THEN 1
ELSE 0
END

引用:

How does rounding work with DateDiff?

提供的文档链接中的datepart Boundaries部分列出了此类信息。

关于sql - SQL Server 中的 DateDiff 舍入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4381163/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com