日期:2014-05-16  浏览次数:20598 次

Oracle的lpad与rpad函数的使用

语法  语法格式如下:

?

  lpad( string, padded_length, [ pad_string ] )

?

  string

  准备被填充的字符串;

?

  padded_length

  填充之后的字符串长度(不管是截取还是补充,函数return的字符长度=padded_length),也就是该函数返回的字符串长度,如果这个数量比原字符串的长度要padded_length<length(string),lpad函数将会把字符串截取成从左到右的n个字符; 如果这个数量比原来的字符串长度要padded_length>length(string),则在左边补上空格

  pad_string

?

  填充字符串,是个可选参数,这个字符串是要粘贴到string的左边,如果这个参数未写,lpad函数将会在string的左边粘贴空格。

  示例1:

?

  SQL> select lpad('abcde',10,'x') from dual;

  LPAD('ABCDE',10,'X')

  --------------------

  xxxxxabcde

  示例2:

?

  SQL> select lpad('abcde',10,'oq') from dual;

  LPAD('ABCDE',10,'OQ')

  ---------------------

  oqoqoabcde?(注意如何显示的)

  示例3:

?

  SQL> select lpad('abcde',2) from dual;

  LPAD('ABCDE',2)

  ---------------

  ab

  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  与lpad函数对应的是rpad函数:

  rpad函数从右边对字符串使用指定的字符进行填充,语法格式与lpad格式相同:

  rpad(string,padded_length,[pad_string])

  string

  被填充的字符串

  padded_length

  字符的长度,是返回的字符串的数量,如果这个数量比原字符串的长度要,rpad函数将会把字符串截取成从左到右的n个字符(都是从左到右); 如果这个数量比原字符串的长度要长,则在右边补上空格

  pad_string

  是个可选参数,这个字符串是要粘贴到string的右边,如果这个参数未写,lpad函数将会在string的右边粘贴空格。

  例如:

  rpad('tech', 7); 将返回' tech?? '

  rpad('tech', 2); 将返回'te'

  rpad('tech', 8, '0'); 将返回'tech0000'

  rpad('tech on the net', 15, 'z'); 将返回 'tech on the net'

  rpad('tech on the net', 16, 'z'); 将返回 'tech on the netz'