【PostgreSQL】前0埋め、後ろ0埋め(lpad、rpad)

2020年10月22日PostgreSQL構文

スポンサーリンク

構文

--左前0埋め( lpad )
lpad( 0埋めしたい文字列 , 何文字にするか ,'0')

--右前0埋め( rpad )
rpad( 0埋めしたい文字列 , 何文字にするか ,'0')

--数値の場合は文字に変換した後にlpad、rpadします
lpad( cast(0埋めしたい数値 as character varying) , 何文字にするか ,'0')

最後の『'0'』のところを別の文字に変えると、その文字で埋めるようになります。

 

 

前0埋め

--前0埋め8桁
select lpad( '12345' , 8 , '0');    --結果:"00012345"

--前0埋め10桁
select lpad( '12345' , 10 , '0');   --結果:"0000012345"

--前スペース埋め10桁
select lpad( '12345' , 10 , ' ');   --結果:"     12345"

--数値の0埋め(castを使用)
select lpad( cast(12345 as character varying), 8 , '0');  --結果:"00012345"

 

後ろ0埋め

--後ろ0埋め8桁
select rpad( '12345' , 8 , '0');    --結果:"12345000"

--後ろ0埋め10桁
select rpad( '12345' , 10 , '0');   --結果:"1234500000"

--後ろスペース埋め10桁
select rpad( '12345' , 10 , ' ');   --結果:"12345     "

--数値の0埋め(castを使用)
select rpad( cast(12345 as character varying), 8 , '0');  --結果:"12345000"

 

PostgreSQLの構文まとめを書いています

入門~経験者まで「基本構文・こんな時どう書くんだっけ?」のまとめ