DB2 Version 9.7 for Linux, UNIX, and Windows

COMPARE_DECFLOAT スカラー関数

構文図を読む構文図をスキップする
>>-COMPARE_DECFLOAT--(--expression1--,--expression2--)---------><

スキーマは SYSIBM です。

COMPARE_DECFLOAT 関数は、2 つの引数が等しいか順不同であるか、あるいは一方の引数が他方より大きいかどうかを示す SMALLINT 値を戻します。

expression1
組み込み数値データ・タイプの値を戻す式。 引数が DECFLOAT(34) ではない場合、処理のために DECFLOAT(34) に論理的に変換されます。
expression2
組み込み数値データ・タイプの値を戻す式。 引数が DECFLOAT(34) ではない場合、処理のために DECFLOAT(34) に論理的に変換されます。
expression1 の値は expression2 の値と比較され、以下の規則に従って結果が戻されます。
  • 両方の引数が有限である場合、比較は代数的であり、10 進浮動小数点減算の手順に従います。差異がいずれかの符号のちょうどゼロである場合、2 つの引数は等価になります。 ゼロ以外の差異が正である場合、最初の引数は 2 番目の引数より大きくなります。ゼロ以外の差異が負である場合、最初の引数は 2 番目の引数より小さくなります。
  • 正のゼロおよび負のゼロは等しいものとして比較されます。
  • 正の無限大は、正の無限大と等しいものとして比較されます。
  • 正の無限大は、すべての有限数値より大きいものとして比較されます。
  • 負の無限大は、負の無限大と等しいものとして比較されます。
  • 負の無限大は、すべての有限数値より小さいものとして比較されます。
  • 数値比較は厳密に行われます。 結果は範囲と精度が無制限であるかのように、有限のオペランドに対して判別されます。オーバーフロー状態またはアンダーフロー状態が発生することはありません。
  • どちらかの引数が NaN または sNaN (正または負) である場合、結果は順不同です。
結果値は、次のようになります。
  • 0: 引数が厳密に等しい場合
  • 1: expression1expression2 より小さい場合
  • 2: expression1expression2 より大きい場合
  • 3: 引数が順不同である場合

この関数の結果は SMALLINT 値となります。 引数のいずれかが NULL 値になる可能性がある場合、 結果も NULL 値になる可能性があります。 引数のいずれかが NULL 値の場合、その結果は NULL 値です。

例: