0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Oracle】SQLで文字列を0埋め/空白埋めする方法

Last updated at Posted at 2024-06-18

ORACLE MASTER Silver SQLを勉強中に見つけた、実務で使えるもの投稿していく。投稿の練習です。

☆このページでできること

→「123」を「00123」に変換する

方法① LPAD 文字型→文字型
方法② TO_CHAR 数値型→文字型


①LPAD(文字列,桁数,埋める文字)

書き方
SELECT LPAD('123',5,'0') FROM dual

結果
「00123」

☆右側への埋め込みも可

lpad :文字列の左側に文字を埋め込む
rpad :文字列の右側に文字を埋め込む


☆他の文字の埋め込みも可

例:「ABCDE」を「ABCDE*****」
SELECT RPAD('ABCDE',10,'*') FROM dual

結果
「ABCDE*****」


☆埋める文字を省略すると、空白が埋め込まれる

例:「abc」を「 abc」
SELECT RPAD('abc',7) FROM dual

結果
「  abc」





②TO_CHAR(数値,数値書式)

書き方
SELECT TO_CHAR(123,09999) FROM dual

結果
「00123」

☆数値書式で使用できる主な数値の書式要素

書式要素 説明 結果例
9 9の数が有効な桁数を表す 999999 12345
0 桁数に満たない場合、先頭にゼロを付けた数値を表す 099999 012345
$ $記号を数値の前に付けて表す $99999 $12345
L ローカル記号を数値の前に付けて表す L99999 ¥12345
C 指定した位置にISO通貨記号を付けて表す C99999 JPY12345
D 指定した位置に小数点を付けて表す 999D999 12.345
. 指定した位置に小数点を付けて表す 999.999 12.345
G 指定した位置に桁区切りを付けて表す 99G999 12,345
, 指定した位置に桁区切りを付けて表す 99,999 12,345
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?