问题
HIVE使用trim(leading)、trim(trailing)、trim(both) 函数报错
原函数作用
trim(leading)用于去除字符串开头的指定字符。
如:去除 '0012300’开头的所有0
select trim(leading ‘0’ from ‘0012300’)
输出结果:12300
同样,
trim(trailing) 用于去除字符串结尾的指定字符;
trim(both) 用于去除字符串开头结尾两侧的指定字符。
ltrim()和rtrim()用于去除原字段左/右的空格
方法
trim(leading ‘0’ from field_name)可使用regexp_replace(field_name, '^(0*+)', '')
函数代替
如:去除 '0012300’开头的所有0
select `regexp_replace('0012300', '^(0*+)', '')`
其他函数亦可利用正则表达式规则自行变换替代。