簡體   English   中英

雪花在當前月份的特定日期檢索上個月的數據

[英]Snowflake retrieving data of past month on a particular date of current month

我是雪花的新手,我的經理希望我在本月 5 日檢索過去一個月的數據。 例如,如果今天是 4 月 5 日,那么讓雪花檢索過去一個月的數據,即從 2021 年 3 月 1 日到 2021 年 3 月 31 日,其他所有月份都類似。

他之所以要在每個下個月的5號更新上個月的數據,因為那是我們獲取數據的那一天。

我嘗試使用DATEADD function 但它比僅使用此 function 更復雜。

提前致謝!

PS:每個月的數據都有相同的日期。 例如:日期就像 - 4 月 20 日將在數據庫中存儲為“2021-4-01” - 與 4 月 25 日相同的日期將存儲為“2021-4-01”。

數據庫中的日期沒有變化,只有月份和年份。

至於上個月 window 可以通過 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>)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM