PostgreSQLでは、列の値を右詰めするにはRPADを使用します()関数。この関数は、指定された長さまで、指定された文字を文字列の右側に埋め込みます。 

方法を見てみましょう

  • PostgreSQL の RPAD() 関数を使用した列の右側のパッド
  • PostgreSQL で列の右側にゼロを埋め込む
  • PostgreSQL テーブルの数値列の右側にゼロまたは文字列を埋め込む

RPAD() の構文:

RPAD(string, length, fill)

string: パディングする元の文字列。

length: パディング後の結果の文字列の合計長さ。

fill: 文字列を埋め込む文字。

例1: 右側にゼロを埋め込む

文字列 ‘PostgreSQL’ の右側にゼロ (‘0’) を埋め込んで合計の長さを 15 にします。

SELECT RPAD('PostgreSQL', 15, '0') AS padded_string;

出力:

PostgreSQL の列の右パッド - RPAD() 1

例2: 文字列を右側にパディングする

文字列 ‘PostgreSQL’ の右側に (‘#’) を追加して合計の長さを 15 にします。

SELECT RPAD('PostgreSQL', 15, '#') AS padded_string;

出力:

PostgreSQL の列の右パッド - RPAD() 2

例3: 列の右側のパディング

Zipcodes テーブルを使用します。

PostgreSQL の列の右パッド - RPAD() 3

方法 1: PostgreSQL の文字列の右側の埋め込み:

RPAD() 関数を使用して PostgreSQL の文字列の右側を埋めます。

select *,RPAD(city,10,'#') FROM zipcodes

City列の右側には、文字列の合計長が10になるまで「#」が埋め込まれます。結果のテーブルは次のようになります。

出力:

PostgreSQL の列の右パッド - RPAD() 4

方法 2: PostgreSQL の数値/整数列の右側の埋め込み

PostgreSQL の RPAD() 関数を使用した数値列の右側の埋め込みは、数値 / 整数列を文字列に型変換することによって行われます

select *,RPAD(zip::text,10,'0') as rpad_zip FROM zipcodes

Zip列の右側にゼロを埋め込んで、文字列の合計の長さが10になるようにします。結果の表は次のようになります。

出力:

PostgreSQL の列の右パッド - RPAD() 5