案例一
在hive或spark计算中需要注意两数之和或之差如果其中有一个为null,那么结果等于null,所以提供以下udf
自定义函数求两数之和
def diy_add(a, b):
r = None
if a is None:
if b is None:
return r
else:
return b
else:
if b is None:
return a
else:
return a + b
spark.udf.register("diy_add", lambda x, y: diy_add(x, y))
# 两个参数均为数值类型
spark.sql("select diy_add(1, 4)")
5
# 两个参数一个数值类型,一个null
spark.sql("select diy_add(1, 4/0)")
1
spark.sql("sel

本文详细介绍了如何在PySpark中使用UDF(用户定义函数),并给出了计算两数之和的代码示例,适用于处理包含NULL值的情况。
最低0.47元/天 解锁文章
2140

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



