Skip to content

PostgreSQL rpad() 函数 ​

PostgreSQL rpad() 函数在一个字符串的右侧填充指定的字符,使其达到指定的长度。

如果您想要左侧填充一个字符串,请使用 lpad() 函数。

rpad() 语法 ​

这是 PostgreSQL rpad() 函数的语法:

sql
rpad(string, length)

或

sql
rpad(string, length, characters)

参数 ​

  • str

    必需的。 需要填充的字符串。

  • length

    必需的。 需要填充到的字符串长度。

  • characters

    可选的。 用来填充的字符。默认是一个空格。

返回值 ​

PostgreSQL rpad() 函数在字符串 str 的右侧填充指定的字符 characters(默认为一个空格),使其达到长度 length。

如果字符串 str 的长度已经超过 length,那么它将会在右侧被截断。

若任意一个参数为 NULL,该函数将返回 NULL。

rpad() 示例 ​

以下的这些示例说明了如果使用 rpad() 函数右侧填充字符串。

右侧填充空格 ​

这个示例演示了使用 rpad() 函数在 hello 右侧填充空格使其长度达到 10。

sql
SELECT concat(rpad('hello', 10), '|') AS "concat(rpad('hello', 10), '|')";
bash
 concat(rpad('hello', 10), '|')
--------------------------------
 hello     |

这里,为了让结果看起来更加直观,我们使用了 concat() 函数拼接了一个 |。

您也可以是使用 format() 函数做到同样的事情:

sql
SELECT format('%-10s|', 'hello') AS "format('%-10s|', 'hello')";
bash
 format('%-10s|', 'hello')
---------------------------
 hello     |

右侧填充多个字符 ​

您还可以使用 rpad() 函数还可以填充多个字符:

sql
SELECT rpad('Hello', 10, 'xyz') AS "rpad('Hello', 10, 'xyz')";
bash
 rpad('Hello', 10, 'xyz')
--------------------------
 Helloxyzxy