hive 使用小知识

本文介绍了一个用于转换科学计数法为标准小数形式的Hive UDF示例,并展示了如何打包并部署该UDF。此外,还讨论了在Hive中处理特殊字符的方法,以及如何通过日期函数实现数据的增量更新。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.udf快速入手:

a,小程序开发

// 科学计数法 换成正常2位小数

   public class changeNumUDF extends UDF {  

public String evaluate(double number){

            String str=new DecimalFormat("0.00").format(number);
            //String str1=new DecimalFormat("0.00").format(7.150391349499989E8);
            return str;

}

b.打jar 上传客户机   执行

    add jar /data/temp/changenum.jar;

   create temporary function fun_changeNum as 'com.agd.udf.changeNumUDF ';

c.验证  hive > select fun_changeNum(7.150391349499989E8); 


2.hive碰到特殊字符导致数据与字段错位,需要清洗。

regexp_replace(data,'\n|\r|\t','')

hive > select  regexp_replace("\nk \t kk \r kkk",'\n|\r|\t','');


3.hive经常做增量,取昨天时间

取时间为前一天

用  where TO_DATE(date) = DATE_SUB(from_unixtime(unix_timestamp(),'yyyy-MM-dd'), 1)

data为原表时间字段   ,后面为当前天的前1天,1可以变化 指前几天

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值