17.10 - 例: 浮動小数点値の比較 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - データ タイプおよびリテラル

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
2021年7月
Content Type
プログラミング リファレンス
Publication ID
B035-1143-171K-JPN
Language
日本語 (日本)

浮動小数点値が関係する計算では、予想外の結果が出ることがあります。浮動小数点の計算を実行して、その結果を何らかの期待値と比較すると、意図した結果になる可能性は非常に低くなります。例: 浮動小数点演算の非結合性の結果を考えてみましょう。

浮動小数点値の計算結果を比較する代わりに、出力されたエラーを見て、求めた値より結果が大きいか小さいかを確認します。次に示す例では、期待する結果を得るためには、どのようにして例: 浮動小数点演算の非結合性の文を記述し直すかを示します。

SELECT i, SUM(a) as sum_a, SUM(b) as sum_b
FROM t1
GROUP BY i
HAVING ABS(sum_a - sum_b) > 1E-10;