Die „is null“-Anweisung wird verwendet, um eine Nullwertabfrage in MySQL durchzuführen und kann bestimmen, ob der Wert des Feldes leer (NULL) ist. Wenn das Feld bei der Abfrage leer ist, werden die Abfragebedingungen erfüllt und der Datensatz wird abgerufen. Wenn das Feld nicht leer ist, werden die Abfragebedingungen nicht erfüllt. „is null“ ist ein Vergleichsoperator und kann daher überall dort verwendet werden, wo ein Operator verwendet werden kann, beispielsweise in einer Select- oder Where-Anweisung.
MySQL IS NULL: Nullwertabfrage
Verwenden Sie das Schlüsselwort IS NULL, um zu bestimmen, ob der Wert eines MySQL-Datenbankfelds NULL ist. Der Nullwert unterscheidet sich von 0, was sich auch von der leeren Zeichenfolge unterscheidet.
Wenn der Wert des Feldes null ist, sind die Abfragebedingungen erfüllt und der Datensatz wird abgefragt. Wenn der Wert des Feldes nicht null ist, sind die Abfragebedingungen nicht erfüllt.
Das grundlegende Syntaxformat für die Verwendung von IS NULL lautet wie folgt:
IS [NOT] NULL
Unter diesen ist „NOT“ ein optionaler Parameter, der angibt, dass die Bedingung erfüllt ist, wenn der Feldwert nicht null ist.
Der Ausdruck gibt TRUE zurück, wenn der Wert null ist, andernfalls gibt er FALSE zurück.
Beachten Sie, dass MySQL keinen integrierten BOOLEAN-Typ (boolescher Wert) hat. Es verwendet TINYINT(1), um den BOOLEAN-Wert darzustellen, d. h. 1 steht für TRUE und 0 für FALSE.
is null ist ein Vergleichsoperator und kann daher überall dort verwendet werden, wo Operatoren verwendet werden können, beispielsweise in Select- oder Where-Anweisungen.
SELECT 1 IS NULL, 0 IS NULL, NULL IS NULL;
Um zu überprüfen, ob ein Feld nicht NULL ist, können Sie is not null verwenden.
SELECT 1 IS NOT NULL, 0 IS NOT NULL, NULL IS NOT NULL;
Beispiel
Finden Sie Kunden ohne Vertriebsmitarbeiter mit dem IS NULL-Operator aus der Kundentabelle:
SELECT customerName, country, salesRepEmployeeNumber FROM customers WHERE salesRepEmployeeNumber IS NULL ORDER BY customerName LIMIT 5;
Besondere Funktionen von MySQL IS NULL
Aus Kompatibilitätsgründen mit ODBC-Programmen unterstützt MySQL einige Besonderheiten Merkmale des IS NULL-Operators.
1) Wenn das Feld Einschränkungen wie NOT NULL hat und das spezielle Datum „0000-00-00“ enthält und das Format Datum oder Datum/Uhrzeit ist, können Sie den Operator is null verwenden, um es zu finden.
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;
hat eine Tabelle mit dem Namen „projects“ erstellt, deren Feld „complete_date“ nicht null ist und das spezielle Datum „0000-00-00“ enthält.
Verwenden Sie „complete_date IS NULL“, um Zeilen mit dem Datum „0000-00-00“ abzurufen.
2) Nutzen Sie weiterhin die Projekttabelle.
Wenn die Variable @@sql_auto_is_null auf 1 gesetzt ist, können Sie den Wert der id-generierten Spalte abrufen, nachdem die Einfügeanweisung mit dem Operator is null ausgeführt wurde.
Beachten Sie, dass @@sql_auto_is_null standardmäßig auf 0 gesetzt ist.
set @@sql_auto_is_null =1; insert into projects (title,begin_date,complete_date) values('MRP III','2010-01-01','2020-12-31'); select id from projects where id is null;
Das obige ist der detaillierte Inhalt vonWas bedeutet null in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!