我是雪花的新手,我的经理希望我在本月5日检索上个月的数据。例如,如果今天是4月5日,那么请snowflake检索上个月的数据,即2021年3月1日至2021年3日,以及其他所有月份的类似数据。
他之所以想在每个下个月的5日更新上个月的数据,是因为那是我们获得数据的日子。
我尝试使用DATEADD
函数,但它比仅使用此函数更复杂。
提前感谢!
附言:每个月的数据都有相同的日期。例如:日期类似于-4月20日将被存储在数据库中作为";2021-4-01"-4月25日的相同日期将被存储为"0";2021-4-01"。
数据库中的日期没有变化,只有月份和年份。
关于可以通过DATE_TRUNC和DATEADD 完成的上月窗口
select
current_date as cd
,date_trunc('month', cd) as end_range
,dateadd('month', -1, end_range) as start_range
;
给出:
CD END_RANGE START_RANGE
2021-04-21 2021-04-01 2021-03-01
问题的另一半只在5日完成,如果你每天都有任务等,可以通过解决
,day(current_date) = 5 as is_the_fifth
或者如果以联机方式
iff(day(current_date) = 5, <do true stuff>, <do false stuff>)