【Db2・Oracle】TO_CHAR 日時や数値から文字列に変換する話

2020年7月6日

TO_CHAR 日付型や数値型を文字列に変換するSQL関数

日付変換の実用例です

SELECT TO_CHAR(SYSDATE, 'YYYYMMDD’) FROM DUAL
結果:20191206 ← 年月日(文字列)

SELECT TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS’) FROM DUAL
結果:20191206212208 ← 年月日時分秒(文字列)

SELECT TO_CHAR(SYSDATE, 'YYYY"年"MM"月"DD"日"') FROM DUAL
結果:2019年12月06日
※年と月と日の様に、日本語を指定する場合はダブルクォーテーションで括ります

数値変換の実用例です

SELECT TO_CHAR(123, '0000’) FROM DUAL
結果: 0123 ← 先頭0埋め(文字列)
※先頭に半角スペース(符号分)が入ります

SELECT TO_CHAR(-123, '0000’) FROM DUAL
結果:-0123 ← 先頭0埋め(文字列)
※マイナス符号が表示される為、先頭に半角スペースは入りません

SELECT TO_CHAR(123, 'FM0000’) FROM DUAL
結果:0123 ← 先頭0埋め(文字列)
※FMを指定している為、先頭に半角スペース(符号分)が入りません

他にもTO_CHARの引数はありますが、上記の例が実務でよく使用するものです。
例では、日付に「SYSDATE」、数値に「123」・「-123」を指定しましたが、もちろんテーブルの項目を記述できます。

サイトマップ

2020年7月6日Db2,Oracle,SQL,データベース

Posted by こっぷ