数値 → 倍精度:
>>--+-DOUBLE-----------+---(--numeric-expression--)------------>< +-FLOAT------------+ '-DOUBLE_PRECISION-'
文字ストリング → 倍精度:
>>-DOUBLE--(--string-expression--)-----------------------------><
スキーマは SYSIBM です。 ただし、DOUBLE(string-expression) のスキーマは SYSFUN です。
DOUBLE 関数は、以下に対応する浮動小数点数を戻します。
関数の結果は倍精度浮動小数点数になります。 引き数がヌル値になる可能性がある場合、結果もヌル値になる可能性があります。 引き数がヌル値であれば、結果はヌル値です。
結果は、引き数が倍精度浮動小数点の列、 または変数に割り当てられた場合の結果と同じ数値になります。
関数の結果は倍精度浮動小数点数になります。 結果はヌル値になることがあります。 引き数がヌル値である場合、その結果はヌル値になります。
結果は、ストリングが定数とみなされ、 倍精度浮動小数点の列または変数に割り当てられる場合の結果と同じ数値になります。
例:
EMPLOYEE 表を使用して、歩合がゼロではない従業員の給与と歩合の比率を計算します。 関係する列 (SALARY と COMM) のデータ・タイプは DECIMAL です。 結果が範囲外にならないようにするため、DOUBLE を SALARY に適用して、 除算が浮動小数点数で実行されるようにします。
SELECT EMPNO, DOUBLE(SALARY)/COMM FROM EMPLOYEE WHERE COMM > 0