CHAR9 スカラー関数

CHAR9 関数は、引数の固定長文字ストリング表現を返します。 CHAR9 関数は、バージョン9以前のリリースで小数点入力値に対して返される結果形式に依存する Db2 for z/OS® の以前のリリースとの互換性を維持することを目的としています。

重要: Db2 for z/OS 以外のプラットフォームで実行される可能性のあるポータブルアプリケーションの場合は、代わりに CHAR関数を使用してください。 Db2 ファミリーの他の製品では、 CHAR9 機能はサポートされていません。

1 番目の引数には、以下に示すタイプの値 1 つを指定することができます。

  • 整数
  • 10 進数
  • 浮動小数点数
  • 10 進浮動小数点数
  • 文字ストリング
  • グラフィック・ストリング
  • 日時値
  • 行 ID 値

1 番目の引数が 10 進数である場合の結果は、以下の説明で示すようにフォーマット設定されます。 一方、1 番目の引数が 10 進数ではない場合の結果は、CHAR 関数の結果と同じです。

10 進数から文字:

構文図を読むビジュアルシンタックスダイアグラムをスキップするCHAR9( 小数式,十進文字)
10 進数から文字
小数式
組み込み 10 進データ・タイプの値を戻す式。 式の値に別の精度と位取りを指定するには、CHAR9 関数を適用する前に DECIMAL 関数を適用します。
十進文字
結果の文字ストリング内で小数部分を区切る 1 バイト文字定数 (CHAR または VARCHAR) を指定します。 この文字は数字、正符号 (+)、 負符号 (-)、またはブランクであってはなりません。 デフォルトはピリオド(.)またはカンマ(,)です。選択を決定する要因に関する詳細は、 小数点の表記をご覧ください

結果は引数の固定長文字ストリング表示です。 この結果には、1 文字の小数点文字と p 桁までの数字が含まれます。pdecimal-expression の精度で、引数が負数の場合は負符号が先頭に付きます。 前後のゼロは返されます。また、正の 10 進値の場合には先行ブランクが返されます。 decimal-expression の位取りがゼロであっても、小数点文字が結果に含まれます。 結果のバイト数が定義された結果の長さより少ない場合、結果の右側にブランクが埋め込まれます。

結果の長さは 2 +p (pdecimal-expression の精度) です。

結果の長さ属性は 2+p (p は decimal-expression の精度) です。

結果の実際の長さは、後続ゼロが含まれている場合を除いて、結果を表すために使用できる最小の文字数です。 引数が負であれば、結果は負符号で始まります。 それ以外の場合には、結果は 数字で始まります。 decimal-expression の位取りがゼロの場合、小数点文字は戻されません。

結果の CCSID は、関数が呼び出されたコンテキストによって決まります。 詳細については、 文字列のエンコード・スキームとCCSIDルールを参照のこと。

以下の表では、10 進数の引数例に対する、CHAR 関数と CHAR9 関数での結果の違いを示します。

表 1. CHAR 関数と CHAR9 関数の結果の例
10 進数の引数 CHAR 関数の結果 CHAR9 関数の結果
(000.1) '.1 ' ' 000.1'
(1000) '1000 ' ' 1000.'
(1.1) '1.1 ' ' 1.1'