レコードで属性値が欠落している場合、その属性はNULLと呼ばれます。 たとえば、レコードに価格属性に対する割当が含まれない場合、EQLでは価格値がNULLとして定義されます。
操作のタイプ | EQLによるNULL値の処理方法 |
---|---|
算術演算と非集計関数 | NULL値に対する操作の値もNULLとして定義されます。
たとえば、レコードで数量の値が4、価格の値がNULLの場合、 |
集計関数 | EQLではNULL値のレコードは無視されます。
たとえば、10件のレコードがあり、そのうち2件に価格属性のNULL値がある場合、すべての集計操作で2つのレコードが無視され、かわりに他の8件のレコードのみを使用して値がコンピュートされます。 すべての10レコードにNULLの価格がある場合、 例外は |
ブール演算子 | 「ブール演算子」を参照してください。 |
式のグループ化 | EQLでは、どのグループ・キーにもNULL値が含まれるレコードは無視されず、レコードはグループに存在するとみなされます。 NULLグループであっても戻されます。 |
フィルタ | 特定の値に対して比較を実行する場合は、IS NULL フィルタを除き、NULL値は指定されたフィルタと一致しません。
次の点に注意してください。
たとえば、レコードAに価格5があり、レコードbに価格値がない場合は、次のようになります:
|
ソート | 指定したソート順について、EQLでは次の情報が返されます:
|
注意:
NULLのキーワードまたはリテラルはありません。 NULLを作成するには、この例のようにCASE
を使用: CASE WHEN False THEN 1 END
。