需求
最近有这么一个需求要实现,由于话单中的区号不准确,需要根据区号-号段对应表来刷新话单中的区号信息。业务逻辑类似如下:
1 2 3 4 5 6 7 8 9 10 11 |
create table tp_EVENT_TGCDR_201504 as select t.*, case when .. when substr(calling_nbr,-11,1)=1 then ( select aera_code from MSISDN_INFO where MSISDN_BEGIN<=substr(calling_nbr,-11) and substr(calling_nbr,-11)>=MSISDN_END limit 1) when .. .. from tgcdr t where yyyymm='201504'; |
就是将号码与区号-号段对应表中的记录来对比,返回该号码所属于的号码段的区号。在oracle中测试了下,不加
定制UDF
最大的问题
如何在UDF中读入区号-号段对应表的数据?
Hive的UDF类没有类似
(更多…)