DIGITS スカラー関数

DIGITS 関数は、数値の絶対値の文字ストリング表現を戻します。

構文図を読むビジュアルシンタックスダイアグラムをスキップするDIGITS( 数値式)

スキーマは SYSIBM です。

引数は、SMALLINT、INTEGER、BIGINT、または DECIMAL 組み込み数値データ・タイプの値を戻す式であることが必要です。

この関数の結果は、引数の位取りに関係なく、 引数の絶対値を表す固定長文字ストリングになります。 結果には、符号や小数点は含まれません。 結果は、必要に応じてストリングを埋めるための先行ゼロの付いた数字だけで構成されます。 ストリングの長さは次のとおりです。

  • 引数が短精度整数 (small integer) の場合は 5
  • 引数が長精度整数 (large integer) の場合は 10
  • 引数が 64 ビット整数 (big integer) の場合は 19
  • 引数が精度 p の 10 進数の 場合は p

結果はnullになる可能性があります。引数がnullの場合、結果もnull値となります。

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

例 1: 10 桁の数字を 含んでいる INTCOL という INTEGER 列が、TABLEX という表にあるものとします。 INTCOL のデータ・タイプは、スペースを節約するために CHAR(10) で はなく INTEGER となっています。 以下の照会は、INTCOL 列に入っている最初の 4 桁のすべての組み合わせをリストします。
   SELECT DISTINCT SUBSTR(DIGITS(INTCOL),1,4)
     FROM TABLEX;
例 2: COLUMNX のデータ・タイプ が DECIMAL(6,2) で、その値の 1 つが -6.28 であるものとします。 この値では、以下のステートメントは値「000628」を戻します。
   DIGITS(COLUMNX)

この結果は、ストリングをこの長さまで埋めるための先行ゼロの付いた、 長さ 6 (列の精度) のストリングになります。 符号も小数点文字も結果には示されません。