仅当列在时间戳中时,如何找到天数差异?

use*_*502 4 sql snowflake-cloud-data-platform

我有两列带有时间戳。我试图找出几天内的差异,忽略小时和分钟。

我在 Snowflake 中使用 SQL。

Ex :- I have both column values as following 
Column1 value = 07-DEC-16 11.05.24.500000000
Column2 value = 08-DEC-16 03.12.06.874000000
Run Code Online (Sandbox Code Playgroud)

我只想减去天数的两列,在本例中,自 12 月 8 日至 12 月 7 日 =1

Luk*_*zda 6

使用DATEDIFF/TIMESTAMPDIFF

根据请求的日期或时间部分计算两个日期、时间或时间戳表达式之间的差异。该函数返回第三个参数减去第二个参数的结果。

SELECT DATEDIFF(day, col1, col2)
FROM tab;
Run Code Online (Sandbox Code Playgroud)

或者:

SELECT ABS(DATEDIFF(day, col1, col2)) -- absolute value
FROM tab;
Run Code Online (Sandbox Code Playgroud)