REAL スカラー関数
REAL 関数は、数値または数値のストリング表現のいずれかの単精度浮動小数点表現を戻します。
数値から実数に
ストリングから実数に
スキーマは SYSIBM です。
数値から実数に
- 数値式 (numeric-expression)
- 組み込み数値データ・タイプの値を戻す式。
結果は、引数が単精度浮動小数点の列または変数に割り当てられた場合の結果と同じ数値になります。 引数の数値が単精度浮動小数点の範囲内にない場合、エラーが戻されます (SQLSTATE 22003)。
ストリングから実数に
- ストリング式
- 数値の文字ストリングまたは Unicode GRAPHIC ストリング表記である値を戻す式。 string-expression のデータ・タイプは、CLOB または DBCLOB にしてはなりません (SQLSTATE 42884)。
結果は、CAST(string-expression AS REAL) の場合の結果と同じ数値になります。 先行ブランクと末尾ブランクは削除されます。 その結果のストリングは、有効な数値定数を形成するための規則に従うものでなければなりません (SQLSTATE 22018)。 引数の数値が単精度浮動小数点の範囲内にない場合、エラーが戻されます (SQLSTATE 22003)。
関数の結果は単精度浮動小数点数になります。 引数が NULL になる可能性がある場合、結果も NULL になる可能性があります。 引数が NULL であれば、結果は NULL 値です。
注
- CAST 指定 はアプリケーションの移植性を高めるために使用してください。
例
EMPLOYEE 表を使用して、歩合がゼロではない従業員の給与と歩合の比率を計算します。 関係する列 (SALARY と COMM) のデータ・タイプは DECIMAL です。 単精度浮動小数点の結果が必要です。 したがって、除算が浮動小数点 (実際には倍精度) で実行されるように REAL が SALARY に適用され、
次に単精度の浮動小数点で結果を戻すために REAL が式全体に適用されます。
SELECT EMPNO, REAL(REAL(SALARY)/COMM)
FROM EMPLOYEE
WHERE COMM > 0