IT技術
AD

PostgreSQLで to_char()すると前に半角スペースが入る

kawa.xxx
記事内に商品プロモーションを含む場合があります

to_char()すると前に半角スペースが入る

少しまえにハマったのでメモ。また出会った時のために… PostgreSQLで文字列をフォーマットに合わせて to_charすると先頭に半角スペースが1つはいってしまい、カラムに意図せぬ値が入ったということがありました。

-- 意図せぬ先頭の半角スペース
select  to_char(10, '00000')
⇒ ' 00010'

よくわからなかったのでとりあえず結局下記のようにトリムして対応しました。

select  trim(to_char(10, '00000'))
⇒ '00010'

そしたら、参考文献にあるように、to_charの第二引数にFM接頭辞を追加することで勝手に入る半角スペースを無効化出来るようです。PostgreSQLの公式ドキュメントの日付・時刻書式用のところに乗っているみたいですね。うーん。。。ちょっと混乱しますね。

select  to_char(10, 'FM00000')
⇒ '00010'
ABOUT ME
kawa.xxx
kawa.xxx
都内のIT系企業に勤める会社員。自分の備忘録的なアウトプット用の場所で、ボルダリングやガシェッド、セキュリティ、カメラの話題が中心です。
記事URLをコピーしました