CHAR 関数

CHAR関数により固定長の文字列への変換値が返されます。

行われる変換は以下のとおりです。 一つ目の引数は、その型が組込みのデータ型である必要があります。CHAR関数の返り値は固定長の文字列です。一つ目の引数はNULLとすることができ、その場合は返り値はNULLです。一つ目の引数は、その型がXMLであってはなりません。もしXMLの値を固定長のCHARにしたいのなら、SQL/XML直列化演算子のXMLSERIALIZEを使う必要があります。

文字から文字への変換を行う時の書き方

CHAR (文字式 [, ] ) 
文字式
CHAR、VARCHAR、LONG VARCHAR、CLOBのいずれかのデータ型の値を返す式。
返却される固定長文字列の長さ。値は0から254の間でなければならない。

もし文字式の長さが数よりも小さかった場合、長さが数と等しくなるよう、関数の結果は空白によりつめられます。もし文字式の長さが数より大きかった場合、切捨てが行われます。もし空白以外の文字が切り捨てられ、文字式が長い文字列(LONG VARCHARやCLOB)でなければ、警告が返されます。

整数から文字への変換を行うときの書き方

CHAR (整数式 ) 
整数式
整数のデータ型(SMALLINT、INTEGER、BIGINT)型の値を返す式

関数の結果は、SQLの整数として渡された引数を文字列で表現したものとなります。結果は引数の数を10進で表すn文字および、もし引数が負数であったなら負の符号から構成されます。また結果は左詰めされています。

日時から文字への変換を行うときの書き方

CHAR (日時式 ) 
日時式
式は次のデータ型の何れかです。
  • 日付: 結果は日付を表す文字表現です。結果の長さは10です。
  • 時刻: 結果は時刻を表す文字表現です。結果の長さは8です。
  • タイムスタンプ: 結果はタイムスタンプを表す文字表現です。結果の長さは26です。

小数から文字への変換を行うときの書き方

CHAR (小数式 ) 
小数式
小数のデータ型を返す式です。もし精度や目盛りの変更を行う場合は、文字への変換を行う前にDECIMALというスカラー関数により変更してください。

浮動小数点数から文字への変換を行うときの書き方

CHAR (浮動小数点数式 ) 
浮動小数点数式
浮動小数点数のデータ型(DOUBLEやREAL)の値を返す式です。
CHAR関数によりEDLEVEL(smallint型と定義されているとします。)の値を、固定長の文字列として返します。
SELECT CHAR(EDLEVEL) FROM EMPLOYEE
EDLEVELが18とするなら、その値がCHAR(6)型で'18    'と返されます。(18に空白が4つ続きます。)