DateDifference 转换为天时和秒 - 雪花

DateDifference converted into Days Hours and Seconds - Snowflake

我正在尝试执行下面提到的从 Microsoft SQL serversnowflake 的代码,但是,到目前为止我是成功的。有人可以帮忙吗?

MSSQL Code

convert(varchar(10),(DATEDIFF(s,A.Date_Time,CURRENT_TIMESTAMP))/86400) + 'Days '
    + convert(varchar(10),((DATEDIFF(s,A.Date_Time,CURRENT_TIMESTAMP))% 86400) /24) + 'Hours ' 
    + convert(varchar(10),(((DATEDIFF(s,A.A.Date_Time,CURRENT_TIMESTAMP)) % 86400) %3600)/60) + 'Mins' 
as [Waiting Pending Time] 

Snowflake - 在这里您可能会发现第一行只是因为正在测试 atm

convert(to_varchar(10),(datediff(second,a.DateTime,current_timestamp)/86400) + "'Days'") as datediff

有人可以帮忙吗?

谢谢

你不需要手动计算它们,DATEDIFF 可以处理:

with mytable1 as (
select '2021-01-02 15:30' Date_Time )
select DATEDIFF( days, Date_Time, CURRENT_TIMESTAMP  )  || ' Days ' ||
       DATEDIFF( hours, Date_Time, CURRENT_TIMESTAMP  ) %  24  || ' Hours ' ||
       DATEDIFF( second, Date_Time, CURRENT_TIMESTAMP  ) % 60 || ' Seconds ' AS result
from mytable1;


+-----------------------------+
|           RESULT            |
+-----------------------------+
| 195 Days 14 Hours 6 Seconds |
+-----------------------------+