Azure Data Factory如何设置变量为前一个工作日?
Azure Data Factory 实现前一个工作日日期计算
直接用ADF内置的表达式函数就能完成需求,不需要额外创建Azure Function。把“设置变量”活动的表达式替换成下面这段即可:
@formatDateTime( if(equals(dayOfWeek(utcNow()), 0), addDays(utcNow(), -2), if(equals(dayOfWeek(utcNow()), 1), addDays(utcNow(), -3), addDays(utcNow(), -1) ) ), 'yyyy-MM-dd' )
表达式逻辑拆解:
dayOfWeek(utcNow()):获取当前UTC时间对应的星期数,返回值规则是0=周日,1=周一,2=周二……6=周六- 第一层判断:如果当天是周日(返回0),就给当前日期减2天
- 第二层判断:如果当天是周一(返回1),就给当前日期减3天
- 其余情况(周二到周六),直接给当前日期减1天
- 最后通过
formatDateTime把计算后的日期转成yyyy-MM-dd的字符串格式
使用时直接把这段表达式粘贴到“设置变量”的「值」输入框里,替换原来的日期表达式即可。
内容的提问来源于stack exchange,提问作者solarissf
相关产品推荐
相关产品推荐

