「is null」ステートメントは、MySQL で null 値クエリを実行するために使用され、フィールドの値が空 (NULL) かどうかを判断できます。クエリを実行する場合、フィールドが空の場合はクエリ条件が一致してレコードが取得されますが、フィールドが空でない場合はクエリ条件は満たされません。 「is null」は比較演算子であるため、select ステートメントや where ステートメントなど、演算子を使用できる場所ならどこでも使用できます。
MySQL IS NULL: Null 値クエリ
IS NULL キーワードを使用して、MySQL データベース フィールドの値が NULL かどうかを判断します。 null 値は 0 とは異なり、空の文字列とも異なります。
フィールドの値が null の場合、クエリ条件が満たされ、レコードがクエリされます。フィールドの値が null でない場合、クエリ条件は満たされません。
IS NULL を使用するための基本的な構文形式は次のとおりです。
IS [NOT] NULL
このうち、「NOT」はオプションのパラメーターで、フィールド値が null でない場合に条件が満たされることを示します。価値。
値が null の場合、式は TRUE を返し、それ以外の場合は FALSE を返します。
MySQL には組み込みの BOOLEAN 型 (ブール値) がないことに注意してください。BOOLEAN 値を表すのに TINYINT(1) を使用します。つまり、1 は TRUE を表し、0 は FALSE を表します。
is null は比較演算子であるため、select ステートメントや where ステートメントなど、演算子を使用できる場所ならどこでも使用できます。
SELECT 1 IS NULL, 0 IS NULL, NULL IS NULL;
フィールドが NULL でないことを確認するには、is not null を使用できます。
SELECT 1 IS NOT NULL, 0 IS NOT NULL, NULL IS NOT NULL;
例
顧客テーブルから IS NULL 演算子を使用して、営業担当者なしで顧客を検索します:
SELECT customerName, country, salesRepEmployeeNumber FROM customers WHERE salesRepEmployeeNumber IS NULL ORDER BY customerName LIMIT 5;
MySQL の特別な関数 IS NULL
ODBC プログラムとの互換性を保つために、MySQL は IS NULL 演算子のいくつかの特別な関数をサポートしています。
1) NOT NULL などの制約があり、特別な日付 '0000-00-00' を含む日付または日時の形式のフィールドがある場合は、is null 演算子を使用して検索できます。
CREATE TABLE IF NOT EXISTS projects ( id INT AUTO_INCREMENT, title VARCHAR(255), begin_date DATE NOT NULL, complete_date DATE NOT NULL, PRIMARY KEY(id) ); INSERT INTO projects(title,begin_date, complete_date) VALUES('New CRM','2020-01-01','0000-00-00'), ('ERP Future','2020-01-01','0000-00-00'), ('VR','2020-01-01','2030-01-01'); SELECT * FROM projects WHERE complete_date IS NULL;
projects という名前のテーブルを作成しました。このテーブルの complete_date フィールドは null ではなく、特別な日付 '0000-00-00' が含まれています。
complete_date IS NULL を使用して、日付「0000-00-00」の行を取得します。
2) 引き続きプロジェクト テーブルを使用します。
変数 @@sql_auto_is_null が 1 に設定されている場合、is null 演算子を使用して挿入ステートメントが実行された後に、生成された ID 列の値を取得できます。
デフォルトでは、@@sql_auto_is_null は 0 に設定されていることに注意してください。
rreeee以上がmysqlでnullとはどういう意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。