目前我正在使用Code On Time来开发我的系统。
我有一个默认的当前日期和时间,在用户从查找中选择一个完成的日期后,我想计算用户已经过了多少天和几小时。 有没有办法做到这一点?
答案 0 :(得分:1)
这就是你要追求的吗?
declare @dateTimeNow datetime = getutcdate()
, @dateTimeThen datetime = '2012-11-28 12:00:00'
select case when DATEPART(hour,(@dateTimeNow - @dateTimeThen)) >0 then day(@dateTimeNow - @dateTimeThen)-1 else day(@dateTimeNow - @dateTimeThen) end days
, DATEPART(hour,(@dateTimeNow - @dateTimeThen)) hours
或
select DATEDIFF(day,@datetimethen, @datetimenow) - case when (DATEDIFF(Hour,@datetimethen, @datetimenow)) % 24 = 0 then 0 else 1 end days
, DATEDIFF(hour,@datetimethen, @datetimenow) % 24 hours