Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.1 » SQL Anywhere サーバー SQL の使用法 » データの問い合わせと修正 » クエリ » WHERE 句:ローの指定

 

NULL のプロパティ

次の項目で、NULL 値のプロパティを詳しく説明します。

  • FALSE と UNKNOWN の相違   FALSE と UNKNOWN はどちらも値を返しませんが、FALSE と UNKNOWN の間には大きな論理的相違があります。false の反対 ("not false") は true ですが、UNKNOWN の反対は何かを知っていることを意味しません。たとえば、1 = 2 は false に評価され、1 != 2 (1 は 2 に等しくない) は true に評価されます。

    ただし、比較の中に NULL がある場合は、式を否定しても、反対のローセットや反対の真の値は得られません。UNKNOWN 値は UNKNOWN のままです。

  • 複数の NULL 値を 1 つの値で置き換える   ISNULL 組み込み関数を使用して、複数の NULL 値を 1 つの特定の値と置き換えることができます。置換は表示目的のためだけに実行されます。実際のカラム値には影響しません。構文は次のとおりです。

    ISNULL( expression, value  )

    たとえば、次の文を使用して Departments のすべてのローを選択し、すべての NULL 値を -1 という値でカラム DepartmentHeadID に表示します。

    SELECT DepartmentID, 
           DepartmentName, 
           ISNULL( DepartmentHeadID, -1 ) AS DepartmentHead
       FROM Departments;

  • NULL と評価される式   オペランドのいずれかが NULL 値の場合、算術演算子またはビット処理演算子のある式は NULL と評価されます。たとえば 1 + column1 は、column1 が NULL であれば NULL と評価されます。

  • 文字列と NULL の連結   文字列と NULL を連結すると、式は文字列と評価されます。たとえば、次の文は文字列 abcdef を返します。
    SELECT 'abc' || NULL || 'def';

 参照