NaN、infおよび-infの結果の扱い

EQLでの演算は、浮動小数点数の扱いに関するIEEE 754 2008標準で定義されている、Not a Number(NaN)、infおよび-infに関する規則に従っています。

浮動小数点数が含まれる演算や、0またはNULL値による除算が含まれる演算を実行する必要がある場合は、EQLの式でNaNinfおよび-infが結果として返されることがあります。

たとえば、NaNinfおよび-infの値がEQL計算において発生するのは、次のようなときです。

ほとんどの演算では、EQLはNaNinfまたは-infの値を他の値と同様に扱います。

ただし、EQLで次の特殊値がどのように定義されているかを知っていると便利です。
演算のタイプ EQLによるNaNinfおよび-infの扱い
算術演算 算術演算にNaN値を使用すると、結果はNaN値になります。
フィルタ NaNの値はフィルタを通過しません(<>の場合を除く)。

NaN値が関係するその他の比較はすべてfalseになります。

ソート 指定されたソート順序にかかわらず、EQLは次のものを返します。
  1. 通常のレコード
  2. NaN値を持つレコード
  3. NULL値を持つレコード
次の例では、昇順および降順のソートにおけるinf値と-inf値の処理方法を示します。
ASC         DESC
----        ----
-inf        +inf
-4          3
0           0
3           -4
+inf        -inf
NaN         NaN
NULL        NULL