如何解决Bigquery 中的 DATE_DIFF 函数可能性
目前我一直在寻找如何将 Datediff 分组到历史时期。 假设有 2 个人的活动日期:假设今天 Current_date 是 2021-05-17
ID Active_date Current_date Date_diff
10001 2021-05-14 2021-05-17 3
10002 2021-05-12 2021-05-17 5
10002 2021-05-04 2021-05-17 13
10001 2021-05-01 2021-05-17 16
我想显示的是 Current_date - Active_date = Datediff 的历史
ID Active_date Current_date Date_diff
10001 2021-05-14 2021-05-17 3
10002 2021-05-12 2021-05-17 5
10002 2021-05-04 2021-05-17 13
10001 2021-05-01 2021-05-17 16
10001 2021-05-14 2021-05-16 2
10002 2021-05-12 2021-05-16 4
10002 2021-05-04 2021-05-16 12
10001 2021-05-01 2021-05-16 15
....... and so on,until Date_diff is zero
如何在 Bigquery/Oracle 上实现这一点?
解决方法
with mytable as (
select 10001 as id,date '2021-05-14' as active_date union all
select 10002,date '2021-05-12'
)
select *,date_diff(curren_date,active_date,day) as diff
from mytable,unnest(generate_date_array(active_date,current_date())) as curren_date
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。