Kennen Sie den Unterschied zwischen leerem Wert und Nullwert in MySQL

Kennen Sie den Unterschied zwischen leerem Wert und Nullwert in MySQL

Vorwort

Kürzlich habe ich festgestellt, dass die Methode meines Freundes zur Beurteilung von Nullwerten beim Schreiben von SQL falsch war, was zu Fehlern in den Daten im Programm führte. Ich werde das hier klären, damit in Zukunft jeder Nullwerte richtig beurteilen kann. Nachfolgend finden Sie ein Beispiel zur Verdeutlichung.

Erstellen einer Tabelle

Tabellentest erstellen (Spalte A varchar (10) nicht null, Spalte B varchar (10) null);

Einfügen von Daten in die Testtabelle

Daten einfügen, bei denen colA null ist

in Testwerte einfügen (null,1);

Zu diesem Zeitpunkt wird ein Fehler gemeldet, da die Spalte „colA“ nicht null sein kann.

Daten einfügen, bei denen colB null ist

in Testwerte einfügen (1,null);

Die Einfügung war erfolgreich.

Alle leeren Daten einfügen

in Testwerte einfügen ('',''); 

Daten dort einfügen, wo Spalte A leer ist

in Testwerte einfügen ('',null); 

Es wurde festgestellt, dass Nullwerte erfolgreich in die Spalte colA eingefügt werden können, während sowohl Nullwerte als auch NULL-Werte in die Spalte colB eingefügt werden können.
Zusammenfassend kann ein als NOT NULL definiertes Feld nur leere Werte und keine Nullwerte einfügen, während ein NULL-Feld leere Werte oder Nullwerte einfügen kann.

Einfügen von Daten, die nicht leer sind

in Testwerte einfügen (1,2);

Abfrage starten




Es kann festgestellt werden, dass „is not null“ nur Spalten mit Nullwerten filtert, während „<>“ sowohl leere Werte als auch Nullwerte filtert. Sie sollten daher die Filtermethode entsprechend der tatsächlichen Situation auswählen.
Darüber hinaus können Sie zur Beurteilung des Nullwerts nur „ist null“ oder „ist nicht null“, also „nicht =“ oder „<>“ verwenden.

Besondere Aufmerksamkeit

1. Wenn Sie count() ausführen, um die Anzahl der Datensätze in einer Spalte zu zählen, wird ein NULL-Wert, der verwendet wird, vom System automatisch ignoriert, der Null-Wert wird jedoch gezählt.

2. Verwenden Sie IS NULL oder is not null, um NULL zu beurteilen. Sie können die ifnull()-Funktion in der SQL-Anweisungsfunktion verwenden, um es zu verarbeiten. Verwenden Sie = oder <>, um leere Zeichen zu beurteilen.

3. Besondere Hinweise für MySQL: Wenn beim Zeitstempel-Datentyp ein NULL-Wert in eine Spalte dieses Datentyps eingefügt wird, ist der angezeigte Wert die aktuelle Systemzeit. Wenn Sie einen Nullwert eingeben, wird „0000-00-00 00:00:00“ angezeigt.

4. Ob zur Beurteilung des Nullwerts „null“ oder „=“ verwendet werden soll, sollte je nach tatsächlichem Geschäft unterschieden werden.

5. Bei Verwendung von ORDER BY werden NULL-Werte zuerst angezeigt. Bei einer absteigenden Sortierung mittels DESC erscheinen NULL-Werte zuletzt. Bei der Verwendung von GROUP BY werden alle NULL-Werte als gleich betrachtet, sodass nur eine Zeile angezeigt wird.

Zusammenfassen

Dies ist das Ende dieses Artikels über den Unterschied zwischen leeren Werten und Nullwerten in MySQL. Weitere Informationen zum Unterschied zwischen leeren Werten und Nullwerten in MySQL finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Unterscheiden Sie zwischen Nullwert und leerem Zeichen ('''') in MySQL
  • Spezifische Verwendung von Nullwerten und leeren Zeichen '' in MySQL

<<:  HTML-Tabellen-Tag-Tutorial (46): Tabellenfußzeilen-Tag

>>:  VMware15/16 Detaillierte Schritte zum Entsperren von VMware und Installieren von MacOS

Artikel empfehlen

Ubuntu 18.04 Touchpad per Befehl deaktivieren/aktivieren

Unter Ubuntu kommt es häufig vor, dass sich das T...

Detaillierte Erläuterung des Excel-Parsings und -Exports basierend auf Vue

Inhaltsverzeichnis Vorwort Grundlegende Einführun...

Detaillierte Erläuterung der Hochverfügbarkeitskonfiguration von Docker

Docker Compose Docker Compose unterteilt die verw...

Detaillierte Erläuterung des Beispiels der Caching-Methode von Vue

Kürzlich wurde die neue Anforderung „Front-End-Ca...

Vue.js implementiert Kalenderfunktion

In diesem Artikelbeispiel wird der spezifische Co...

So passen Sie mit CSS einen schöneren Link-Prompt-Effekt an

Vorschlag: Das möglichst häufige handschriftliche ...

Docker installiert ClickHouse und initialisiert den Datentest

Clickhouse-Einführung ClickHouse ist ein spalteno...

CSS zum Erzielen eines Animationseffekts der Tik Tok-Abonnementschaltfläche

Ich habe mir vor einiger Zeit Tik Tok angesehen u...

Wie CSS die Zeit des weißen Bildschirms während des ersten Ladens beeinflusst

Rendering-Pipeline mit externen CSS-Dateien In de...

HTML Tutorial: Sammlung häufig verwendeter HTML-Tags (4)

Verwandte Artikel: Anfänger lernen einige HTML-Ta...