Snowflake:仅在工作日添加日期

Snowflake: Dateadd only weekdays

是否可以在日期函数中只添加工作日?

dateadd(day, 10, business_date)

是否可以检索接下来的 10 个工作日,而不是返回接下来的 10 天?

此致, 斯里达

在其他语言中有一些半复杂的函数可以转换,但在不知道更多的情况下,我通常会推荐创建日历的方法table。

在 table 中,您可以将日期标记为工作日,然后使用 table 加入和过滤。

这还可以让您使用额外的 IsHoliday 标志扩展到假期

然后您可以使用这样的查询加入日期列表

SELECT DateColumnValue, RANK() OVER(ORDER BY DATEKEY) RNK 
FROM DIMDATE
WHERE DateColumnValue >= CURRENT_DATE
    AND isWeekday = 1
    AND isHoliday = 0
QUALIFY RNK <= 10