背景
业务上计算业绩需要剔除掉指定放假时间,我们这里的放假时间维护在一个mysql表中,进行动态配置,所以需要自定义函数来计算当前日期几天之后的时间,这几天中如果包含myql表中存储的放假日期,则需要剔除掉,然后进行顺延。
如下,计算2023-01-25这个日期7天之后是什么日期,正常是2023-02-02,但是现在需要剔除掉配置时间confid_days中的两天,最后结果是2023-02-04。需要将这个逻辑写成udf函数,进行使用。
python代码实现
在资源处右键新建python资源。
填写代码
阿里云函数注册,其中类名出是--文件名.类名 的组合。
测试
select dateadd_exclude_date('2023-01-25 00:00:00',7,array('2023-01-26 00:00:00','2023-01-27 00:00:00')) from ods_saas_crm_un_assign_switch_log_df where ds = '${bizdate}' limit 1;
参考文档:
文章描述了一种在业务中计算日期时需要排除特定假期的情况。通过创建一个自定义Python函数(dateadd_exclude_date),该函数可以添加指定天数到给定日期,同时跳过在MySQL表中配置的放假日期。函数在阿里云环境中注册并测试,例如,从2023-01-25开始,排除两天假期后,结果是2023-02-04。

941

被折叠的 条评论
为什么被折叠?



