SQL:文字列や数値項目へ埋め込み文字を挿入して桁数を揃える方法

SQLでゼロ埋めスペース埋めして桁数を揃えたい場合にはLPAD関数やRPAD関数を使用することで取得可能となります。DBMSによっては使用出来ないものもあります。

関数\DBMSMySQLPostgreSQLSQL ServerOracle
LPAD
RPAD
 

書式は「LPAD(列名,バイト数,’埋め込み文字’)」、「RPAD(列名,バイト数,’埋め込み文字’)」で指定します。第三引数の埋め込み文字を省略すると半角スペースが埋め込まれます。

サンプルではOracleでの使用例となります。

サンプルテーブル

  • 「GOODS」テーブル

LPAD関数の使用例1

  • 項目「GOODS_CODE」を10桁でゼロ埋めするSQL(クエリー)
  • 実行結果

LPAD関数の使用例2

  • 項目「GOODS_CODE」を10桁で全角「*」埋めするSQL(クエリー)
  • 実行結果
    以下のように埋め込み文字へ全角文字を指定すると1文字=2バイト扱いで埋め込まれます。

RPAD関数の使用例1

  • 項目「GOODS_CODE」を10桁でゼロ埋めするSQL(クエリー)
  • 実行結果

RPAD関数の使用例2

  • 項目「GOODS_CODE」を10桁で全角「*」埋めするSQL(クエリー)
  • 実行結果
    RPADでも以下のように埋め込み文字へ全角文字を指定すると1文字=2バイト扱いで埋め込まれます。