目次

Search

  1. はじめに
  2. トランスフォーメーション言語
  3. 定数
  4. 演算子
  5. 変数
  6. 日付
  7. 関数

トランスフォーメーション言語リファレンス

トランスフォーメーション言語リファレンス

TO_DECIMAL38

TO_DECIMAL38

文字列または数値を10進値に変換します。 TO_DECIMAL38は、先頭の空白を無視します。

構文

TO_DECIMAL38(
value
[,
scale
] )
以下の表に、このコマンドの引数を示します。
引数
必須/
オプション
説明
必須
StringまたはNumericデータ型で指定する必要があります。10進数値に変換する値を渡します。有効なトランスフォーメーション式を必要に応じて入力できます。
スケール
オプション
0から38までの整数リテラルで指定する必要があります。小数点以下の桁数を指定します。この引数を省略すると、関数は入力値と同じ位取りの値を返します。

戻り値

0から38桁までの精度とスケールを持つ10進値。
関数にNULL値を渡した場合はNULLです。
関数に渡された値が10進数値として無効なデータを含んでいる場合、データ統合サービスはエラー行であることを示すマークをその行に付けます。例えば、
TO_DECIMAL38("1234567890123456789012345678901234567890.12")
を渡すと、データ統合サービスはこの行を拒否します。
戻り値が15桁を超える精度を持つ10進値である場合は、高精度を有効にして、最大38桁までの10進精度を使用可能にできます。
次の式は、ポートIN_TAXからの値を使用します。IN_TAXは、精度44桁のStringデータ型です。戻り値は、精度38桁、スケール 3桁のDecimalデータ型です。
TO_DECIMAL38( IN_TAX, 3 )
IN_TAX
RETURN VALUE
'15.6789'
15.679
'60.2'
60.200
'118.348'
118.348
NULL
NULL
'A12.3Grove'
Error. Integration Service skips this row.
'1234567890.123'
1234567890.123
'123456789012345678901234567890.123'
123456789012345678901234567890.123
'1234567890123456789012345678901234567890.123'
Error. Integration Service skips this row.
'711A1'
Error. Integration Service skips this row.