--->UDF函数代码
![28bad584867b246ffab84fec7610bf0.png]
(https://ask.selectdb.com/uploads/post/5oYYuES6U19.png)
package com.xyy.doris.udf;
import org.apache.hadoop.hive.ql.exec.UDF;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
public class SaleProvIdsToName extends UDF {
public static void main(String[] args) {
}
public String evaluate(String provIds) {
Map<String, String> codeToRegionMap = new HashMap<>();
codeToRegionMap.put("450000", "广西");
// 3. 分割省份ID数组
if(provIds == null || "".equals(provIds)){
return null;
}
String[] provIdsArr = provIds.split(",");
// 4. 转换为地区名称数组(使用 Java 8 Stream)
String[] regionNames = Arrays.stream(provIdsArr)
.map(code -> codeToRegionMap.getOrDefault(code, null))
.toArray(String[]::new);
return String.join(",", regionNames);
}
}
--->建表语句
--->创建函数,执行后报错