阿里云dataworks python UDF使用实践

背景

业务上计算业绩需要剔除掉指定放假时间,我们这里的放假时间维护在一个mysql表中,进行动态配置,所以需要自定义函数来计算当前日期几天之后的时间,这几天中如果包含myql表中存储的放假日期,则需要剔除掉,然后进行顺延。

如下,计算2023-01-25这个日期7天之后是什么日期,正常是2023-02-02,但是现在需要剔除掉配置时间confid_days中的两天,最后结果是2023-02-04。需要将这个逻辑写成udf函数,进行使用。

python代码实现

在资源处右键新建python资源。

阿里云dataworks python UDF使用实践_第1张图片

填写代码

阿里云dataworks python UDF使用实践_第2张图片

阿里云函数注册,其中类名出是--文件名.类名 的组合。

阿里云dataworks python UDF使用实践_第3张图片

测试

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;

阿里云dataworks python UDF使用实践_第4张图片

参考文档:

https://help.aliyun.com/document_detail/154431.html

你可能感兴趣的:(大数据,python,data,阿里云,python,udf)