いくつかの言語では、NULLの処理方法が異なります。ほとんどの人は、trueである2値論理について知っています。 およびfalse ブール式で比較可能な唯一の値です(falseでも0として定義され、trueと定義されます)。
標準SQLでは、3値論理について考える必要があります。 NULLは実際の値として扱われません。むしろ、「不明」と呼ぶことができます。したがって、値が不明な場合、stateの場合は明確ではありません。 0、1、またはその他です。したがって、NULL != 1 結果はNULL もう一度。
これは、NULLである可能性のあるものをフィルタリングする場合は常に、NULL値を自分で処理する必要があると結論付けています。構文も異なることに注意してください。NULL値はx IS NULLとのみ比較できます。 x = NULLの代わりに 。論理演算の結果を示す真理値表については、ウィキペディアを参照してください。