概要 :このチュートリアルでは、SQLite IS NULL
の使用方法を学習します およびIS NOT NULL
値がNULLかどうかを確認する演算子。
SQLiteの概要IS NULL
オペレーター
NULL
特別です。情報が不明または該当しないことを示しています。
たとえば、曲によっては、誰が書いたかわからないため、ソングライター情報がない場合があります。
これらの未知のソングライターを曲と一緒にデータベーステーブルに保存するには、NULLを使用する必要があります。
NULLは、数字のゼロや空の文字列などでも同じではありません。
特に、NULLはそれ自体と同じではありません。次の式は0を返します:
NULL = NULL
Code language: SQL (Structured Query Language) (sql)
これは、2つの未知の情報を比較できないためです。
次のtracks
を見てみましょう サンプルデータベースのテーブル:
次のステートメントは、作曲家がNULLのトラックを見つけようとします。
SELECT
Name,
Composer
FROM
tracks
WHERE
Composer = NULL;
Code language: SQL (Structured Query Language) (sql)
追加のメッセージを発行せずに空の行を返します。
これは、次の式が常にfalseと評価されるためです。
Composer = NULL
Code language: SQL (Structured Query Language) (sql)
この方法でNULLを使用することは無効です。
値がNULLかどうかを確認するには、IS NULL
を使用します 代わりに演算子:
{ column | expression } IS NULL;
Code language: SQL (Structured Query Language) (sql)
IS NULL
column
の場合、演算子は1を返します またはexpression
NULLと評価されます。
作曲家が不明なすべてのトラックを検索するには、IS NULL
を使用します 次のクエリに示されている演算子:
SELECT
Name,
Composer
FROM
tracks
WHERE
Composer IS NULL
ORDER BY
Name;
Code language: SQL (Structured Query Language) (sql)
部分的な出力は次のとおりです。
SQLite IS NOT NULL
オペレーター
NOT
演算子はIS NULL
を否定します 次のように演算子:
expression | column IS NOT NULL
Code language: SQL (Structured Query Language) (sql)
IS NOT NULL
expression
の場合、演算子は1を返します またはcolumn
はNULLではなく、式または列がNULLの場合は0です。
次の例では、tracks
を検索します 作曲家がNULLではない:
SELECT
Name,
Composer
FROM
tracks
WHERE
Composer IS NOT NULL
ORDER BY
Name;
Code language: SQL (Structured Query Language) (sql)
この図は、部分的な出力を示しています。
このチュートリアルでは、IS NULL
を使用して、列または式の値がNULLかどうかを確認する方法を学習しました。 およびIS NOT NULL
演算子。