Sql-Server

計算日期時間與目前日期和時間之間的時間差

  • May 3, 2016

我想用[hh]:mm格式的結果計算過去日期時間和目前日期時間之間的差異。

嘗試這個:

DECLARE @then datetime={ts '2014-01-23 12:34:56.789'};

SELECT LEFT(
   CONVERT(varchar(10), DATEADD(second,
       DATEDIFF(second, @then, GETDATE()),
       {d '1900-01-01'}), 8), 5);

這是它的作用:

  • GETDATE()計算@then 和 now ( )之間的秒數差異
  • 將該秒數添加到 1900-01-01
  • 將輸出格式化為hh:mm:ss
  • 返回前五個字元,即hh:mm

哦,REPLACE如果你想隱藏小於 60 分鐘的小時,你可以用“”(無)輸入文本“00:”:

SELECT REPLACE(LEFT(CONVERT ....
   ...., 8), 5), '00:', '')

引用自:https://dba.stackexchange.com/questions/75182