sparksql_LPAD/RPAD实现补充字符到定长

需求:tableA表中有一个stat_hour字段,记录数据产生的hour。但由于tableA是爬虫回来落表,所以stat_hour字段有时存储为7,有时候是07,为了方便后面的数据处理,需要将stat_hour长度小于2时,补零,全部提取为‘07’这种形式

用到的函数:LPAD(str, len, padstr),RPAD(str, len, padstr)
lpad函数是Oracle数据库函数,lpad函数从左边对字符串使用指定的字符进行填充。l是left的简写,pad是填充的意思。Rpad同理。

实例:select lpad(stat_hour,2,0) from tableA

解释:lpad(stat_hour,2,0)将stat_hour补充成定长2,如果不足2个长度,左补零。

上述实例我的执行组件为:presto
tableA表中stat_hour字段的数据类型varchar。执行上述sql报错提醒:Unexpected parameters (varchar, integer, integer) for function lpad. Expected: lpad(varchar(x), bigint, varchar(y)),也就是Lpad函数三个变量的类型。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值