gpt4 book ai didi

snowflake-cloud-data-platform - 雪花中两个日期之间的年龄

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

雪花中两个日期之间的年龄

在 Netezza 中,我们有一个名为 AGE 的函数,但在雪花中我找不到类似的函数

Netezza:选择 AGE('2019-12-01', '2018-12-12') - 时间:11 个月 20 天

雪花中有类似的功能吗?

最佳答案

鉴于 Netezza 是基于 PostgreSQL 的,所以它是 AGE函数,相当于Snowflake的DATEDIFF ,但与 PostgreSQL 间隔一样,它默认以年/月/日的简化形式表示。 Snowflake 不提供执行此操作的功能。参数的顺序也被交换。

因此您的 AGE('2019-12-01', '2018-12-12') 将是 DATEDIFF('days', '2018-12-12', ' 2019-12-01')

我本来建议您可以执行以下操作来构建部件,但我很确定这是雪花中的错误:

select '2018-12-12'::date AS st
,'2019-12-01'::date AS et
--,DATEDIFF('month', st,et) AS t_m
--,DATEDIFF('days', st,et) AS t_d
,DATEDIFF('year', st,et) AS y
,DATEADD('year', y, st) AS yst
,DATEDIFF('month', yst,et) AS m
,DATEADD('month', m, yst) AS mst
,DATEDIFF('day', mst,et) AS d
;

AS y 是 1 ,t_m 是 12 我不认为它们应该是这样,因为只有 354 天..

我将打开错误报告。但是如果/当这个问题被修复时,你可以将 y、m 和 d 一起比较,以获取字符串(如果你需要)。否则我自己会坚持几天。

关于snowflake-cloud-data-platform - 雪花中两个日期之间的年龄,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59463430/

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