我在Snowflake中有当月的数据,我正在用下面提到的查询提取这些数据
select distinct HPOLICY
, ANNUALPREMIUMAMOUNT
, year(dateadd(year, 0, CURRENT_DATE))
, month(dateadd(month, 0, CURRENT_DATE)) yearmonth
from hub_test
我想将这些数据外推到过去24个月,这意味着在过去24个月中获得与2019年9月、2019年8月等相同的数据。
该查询获取所有时间不同的数据,并在其上放置一个假的当前年/月列。
如果你在哪里做类似的事情:
select distinct HPOLICY
,ANNUALPREMIUMAMOUNT
,date_part('year', date_column) as year
,date_part('month', date_column) as month
from hub_test
where date_column >= date_trunc('month',CURRENT_DATE());
如果date_column
是该行中数据的date_o,则会有当前月份的数据。
因此,要获得最后24个月,您可以将其更改为:
select distinct HPOLICY
,ANNUALPREMIUMAMOUNT
,date_part('year', date_column) as year
,date_part('month', date_column) as month
from hub_test
where date_column >= dateadd('month',-24, date_trunc('month',CURRENT_DATE()));