NULL 値によると、MySQL の NULL 値は単にデータがないことを意味します。NULL 値は、一部の型のゼロ値とは異なります。たとえば、int 型のゼロ値は 0 で、文字列のゼロ値は "" ですが、これらには null ではなく、データがまだあります。 データを保存する際、一時的に利用できないデータは null として記録され、現時点では有効な情報を提供できないことが示されます。 ただし、nullを使用する場合は、いくつかの問題に注意する必要があります。MySQLのドキュメントでは、次のように説明されています。 null 使用時にエラーが発生しやすい点以下では、MySQL 関係者が挙げている null のエラーが発生しやすいポイントについて説明します。 MySQL に慣れていない人は、null 値とゼロ値を簡単に混同する可能性があります。
たとえば、次の2つのSQL文によって生成されるデータは独立している。 mysql> my_table (phone) に VALUES (NULL) を挿入します。 mysql> my_table (phone) に値 ('') を挿入します。 最初のSQL文は、電話番号が現時点では不明であることのみを示しており、2番目の文は電話番号が既知であり、
nullの論理的判断は別途処理する必要がある値が null かどうかを判断するには、特殊な構文
=を使って判断すると、常に偽になります
たとえば、次のように記述すると、where テストの結果は true になりません。 my_table から * を選択 WHERE phone = NULL; null と他のデータを使用して計算を行う場合、MySQL ドキュメントで特定の操作について追加の特別な指示がない限り、結果は常に null になります。
例えば: mysql> SELECT NULL, 1+NULL, CONCAT('Invisible',NULL); +------+--------+---------------------------+ | NULL | 1+NULL | CONCAT('Invisible',NULL) | +------+--------+---------------------------+ | NULL | NULL | NULL | +------+--------+---------------------------+ セット内の 1 行 (0.00 秒) したがって、null について論理的な判断を下したい場合は、 NULL値を探すには、IS NULLテストを使用する必要があります。 NULL値を持つ列のインデックス作成には、隠れた詳細をさらに予測する必要があるInnoDB、MyISAM、および MEMORY ストレージ エンジンのみが、null 値を持つ列のインデックス作成をサポートします。
インデックスの長さは通常のインデックスより 1 長くなります。つまり、消費するメモリがわずかに多くなります。 キーの保存形式により、NULL になる可能性がある列のキーの長さは、NOT NULL 列のキーの長さよりも 1 長くなります。 グループ化、重複排除、およびnull値のソートは特別に扱われます=null は常に false であるという上記の記述とは反対に、null は等しいとみなされます。
null値のソートは特別に扱われます。NULL値は最初または最後にソートされます。
集計操作中はNullは無視されます
たとえば、count(*) は null 値を持つデータをカウントしません。
mysql> SELECT COUNT(*), COUNT(age) FROM person; 上記は、MySQL null のよくある間違いの詳細です。MySQL null の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: Windows 10でDockerコンテナのポートにアクセスできない問題に対する完璧な解決策
>>: 18 個のキラー JavaScript ワンライナー
最近、複数のdivにあるテーブルのTDを同じ幅に調整しても、揃えることができず、幅にパターンがないこ...
導入: MySQL データベースの仕様に関しては、皆さんも何らかのドキュメントを読んだことがあると思...
db2 データベースをホストマシンに直接インストールするのは面倒で、ユーザーや権限を巻き込むのも不便...
1. インストールパッケージを保存する場所に移動しますcd /home/lnmp 2. MySQL ...
この記事では、カレンダー効果を素早く実現するためのJavaScriptの具体的なコードを例として紹介...
操作要素の詳細については、前回の記事を参照してください。JavaScript WebAPI、DOM、...
目次序文リスナーと計算プロパティの違いvue3 で watch を使用するにはどうすればいいですか?...
まずは栗を見てみましょう EXPLAIN select * from employees where...
目次序文1. NJSモジュールをインストールする方法1: NJSモジュールを動的にロードする方法2:...
Vue での v-on:clock の使用現在、vue.js フレームワークを学習しています。後で参...
この記事では、WeChatミニプログラムの具体的なコードを共有し、左にスワイプしてリスト項目を削除す...
この記事では、LinuxでのMySQL 5.6.27のインストールチュートリアルを参考までに紹介しま...
この記事では、JavaScriptでシンプルな時計を実装するための具体的なコードを参考までに紹介しま...
1.インストールしたい場所に解凍し、my.iniファイルを作成します。 my.iniの内容は次のと...
目次適用シナリオ:方法 1: 正規表現 (推奨)方法2: 配列のreduceメソッドを使用する方法3...