2012年5月12日土曜日

[Oracle]LPADとRPAD

LPADもRPADも使い方は同じ。

第一引数

文字列

第二引数

桁数

第三引数(任意)

桁を揃えるために使う文字列。指定しなかった場合はスペースになる。

使用例

-- 左スペース埋めで10桁にする
select '[' || lpad('hoge', 10) || ']' from dual
-- 右スペース埋めで10桁にする
select '[' || rpad('hoge', 10) || ']' from dual

-- スペース以外を使用する場合は、3番目にその値を指定する。
select '[' || lpad('hoge', 10, '.') || ']' from dual
select '[' || lpad('hoge', 10, '.') || ']' from dual

-- 3番目には、2文字以上の値も指定できる。
-- この場合は、変換後の値は「abhoge」となる。(指定した値より長くなることなハイ)
select '[' || lpad('hoge', 6, 'abc') || ']' from dual

-- そもそも指定した文字が、サイズより小さい場合は切り捨てられる。
select '[' || lpad('hoge', 1, 'abc') || ']' from dual