2019.4.15
2020.1.7

TO_CHARを使った日付のフォーマットで月や日の値をゼロ埋めせずに出力する

Oracleの関数「TO_CHAR」を使った日付のフォーマットで、月や日の値をゼロ埋めせずに出力する方法になります。

コード

まず、通常の日付のフォーマットは以下のようになります。


SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD') FROM DUAL;

-------------------
2019-04-15

上記のSQLを実行して得られる出力結果は「2019-04-15」という文字列です。

西暦はそのままではいいですが、月や日、または時分秒といった箇所はゼロ埋めせずに出力したいことがあり、そういった場合は、フォーマット文字列の先頭に「FM」を追記します。


SELECT TO_CHAR(SYSDATE, 'FMYYYY-MM-DD') FROM DUAL;

-------------------
2019-4-15

このSQLを実行すると「2019-4-15」のような形式で文字列が返ってきます。

Oracle】関連記事