TO_CHAR関数 【TO_CHAR function】

概要

TO_CHAR関数(TO_CHAR function)とは、リレーショナルデータベースの問い合わせや操作に使われるSQL文で利用できる関数の一つで、日付/時刻型あるいは数値型の文字列に変換するもの。バイナリデータを扱えるシステムもある。

基本的な書式は「TO_CHAR(,フォーマット文字列)」で、指定したフォーマット文字列で指定した形式に従って整形し、文字列型として返す。には数値型(整数型浮動小数点数型DECIMAL型など)、日付/時刻型DATE型TIME型TIMESTAMP型など)を指定できる。

フォーマット文字列によって、どのような形式の文字列に変換したいかを指示することができる。例えば、日付型に対して「YYYY/MM/DD」というフォーマットを与えれば、「1970/01/01」のような文字列出力してくれる。

日付/時刻型に使用できる書式としては、「YYYY」(4桁の西暦)、「MM」(2桁の月)、「MONTH」(月名)、「DD」(2桁の日)、「DAY」(曜日)、「HH」または「HH12」(12時制の時)、「HH24」(24時制の時)、「AM/PM」(午前または午後)、「MI」(分)、「SS」(秒)などがある。

数値型のフォーマットは「999.99」のように数値の桁数を「9」の数で指定する。整数部の上位桁や小数部の下位桁が指定の桁数に満たない場合は空白文字(スペース)が挿入されるが、空白ではなく0で埋めたい場合は「00.000」のように9ではなく0で桁数を指定する。

小数点や桁区切り記号は地域によって異なり、「D」で小数点、「G」で桁区切りを挿入する。「.」や「,」で決め打ちすることもできる。正負の符号は「S」、通貨記号(システムロケール情報を参照)は「L」で表示することができる。

これらのフォーマット文字列システムによって一部の書式が異なっていたり、これ以外の書式が用意されていることもある。TO_CHAR関数はOracle DatabasePostgreSQLなどで使用できるが、SQL ServerではCONVERT関数を、MySQLではFORMAT関数(数値)、DATE_FORMAT関数(日付)、TIME_FORMAT関数(時刻)を用いる。

(2022.12.12更新)
この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。
ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる