oracle中LPAD和RPAD函数的使用方法(加个人总结)

今天看到两个没有见过的SQL中的函数,总结一下;

函数参数:lpad( string1, padded_length, [ pad_string ] )

其中

string1:源字符串

padded_length: 即最终结果返回的字符串的长度;如果最终返回的字符串的长度比源字符串的小,那么此函数实际上对源串进行截取处理,与substr(string,number1,number2)的作用完全相同,如果padded_length比源字符串的长度长,则用pad_string进行填充,确保返回的最终字符串的长度为padded_length;

pad_string:用于填充的字符,可以不填,默认为空字符

实例:

select lpad('123456',2) from dual

--结果为 12
select lpad('123456',7,'0') from dual

--结果为 0123456
--注意在左侧填充 lpad中的l为left,左侧的意思
select rpad('123456',2,'0') from dual

--结果为 12
select rpad('123456',7,'0') from dual

--结果为 1234560
--rpad 填充在右侧,r为right 右侧

总结:

可以看到,当string1源字符串的长度小于padded_length时,lpad、rpad的作用是相同的,都是相当于substr截取字符串,当padded_length大于string1源字符串的长度时,lpad为在源字符串的左侧填充指定字符或者空格,rpad为在源字符串的右侧填充指定字符或者空格;

原文地址:https://www.cnblogs.com/zuizui1204/p/6610025.html