需求: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函数三个变量的类型。