Wie man NULL in SQL aktualisiert und einfügt

Der korrekte Umgang mit NULL-Werten ist bei der Arbeit mit SQL-Datenbanken von entscheidender Bedeutung. NULL zeigt an, dass Daten nicht vorhanden sind, unbekannt sind oder nicht zutreffen. In diesem Artikel werden wir die spezifischen Schritte zum Aktualisieren und Einfügen von NULL-Werten in SQL erläutern und auf wichtige Punkte sowie häufige Fallstricke hinweisen.

Inhaltsverzeichnis

Grundlegendes Konzept von NULL

In SQL steht NULL für das Fehlen oder Unbekanntsein eines Wertes. Im Gegensatz zu anderen Datentypen repräsentiert NULL den Zustand „kein Wert vorhanden“. Zum Beispiel wird in einer Tabelle eine Spalte als NULL angezeigt, wenn keine Daten eingegeben wurden. NULL erfordert eine spezielle Behandlung, und es ist wichtig, den Umgang mit Vergleichsoperatoren und Funktionen zu beachten.

Wie man NULL-Werte einfügt

Das Einfügen von NULL-Werten in eine Datenbank mit der INSERT-Anweisung ist sehr einfach. Insbesondere weist man NULL für die entsprechende Spalte zu. Ein Beispiel dafür folgt.

Grundlegende INSERT-Anweisung

Im folgenden Beispiel fügen wir einen neuen Datensatz in die employees-Tabelle ein. Dabei wird für die Spalte middle_name der Wert NULL eingefügt.

INSERT INTO employees (first_name, last_name, middle_name)
VALUES ('John', 'Doe', NULL);

Einfügen von NULL in eine bestimmte Spalte

Es ist auch möglich, nur in bestimmten Spalten Werte einzufügen, während andere Spalten auf NULL gesetzt werden.

INSERT INTO employees (first_name, last_name)
VALUES ('Jane', 'Smith');

In diesem Fall wird die Spalte middle_name automatisch auf NULL gesetzt.

Wie man NULL-Werte aktualisiert

Im Folgenden wird beschrieben, wie vorhandene Daten mithilfe der UPDATE-Anweisung auf NULL-Werte aktualisiert werden können. Um eine bestimmte Spalte eines vorhandenen Datensatzes auf NULL zu aktualisieren, weist man diese im SET-Abschnitt den Wert NULL zu.

Grundlegende UPDATE-Anweisung

Im folgenden Beispiel wird die Spalte middle_name in der employees-Tabelle auf NULL aktualisiert.

UPDATE employees
SET middle_name = NULL
WHERE employee_id = 1;

Diese Anweisung setzt die Spalte middle_name des Datensatzes mit employee_id 1 auf NULL.

Mehrere Spalten auf NULL aktualisieren

Es ist auch möglich, mehrere Spalten gleichzeitig auf NULL zu aktualisieren.

UPDATE employees
SET middle_name = NULL, last_name = NULL
WHERE employee_id = 2;

In diesem Fall werden die Spalten middle_name und last_name des Datensatzes mit employee_id 2 auf NULL aktualisiert.

Wichtige Hinweise zum Umgang mit NULL

Beim Umgang mit NULL-Werten gibt es einige wichtige Hinweise zu beachten. Wenn diese nicht verstanden werden, kann dies zu unerwarteten Fehlern oder Inkonsistenzen in den Daten führen.

Vergleich mit NULL

Da NULL ein spezieller Wert ist, kann man ihn nicht mit den üblichen Vergleichsoperatoren (wie = oder !=) vergleichen. Zum Vergleich von NULL-Werten werden IS NULL oder IS NOT NULL verwendet.

SELECT * FROM employees
WHERE middle_name IS NULL;

NULL in Funktionen und Berechnungen

Berechnungen, die NULL-Werte enthalten, ergeben ebenfalls NULL. Zum Beispiel ergibt NULL + 5 NULL. Um NULL zu vermeiden, kann die COALESCE-Funktion verwendet werden, um einen Standardwert festzulegen.

SELECT COALESCE(middle_name, 'N/A') AS middle_name
FROM employees;

Standardwert für NULL

Wenn keine Standardwerte für Spalten festgelegt sind, werden neue Datensätze mit NULL in diesen Spalten eingefügt. Es ist jedoch möglich, Standardwerte festzulegen, um das Auftreten von NULL zu vermeiden.

ALTER TABLE employees
ALTER COLUMN middle_name SET DEFAULT 'Unknown';

Wie man NULL-Werte überprüft

Hier zeigen wir, wie man mit einer SELECT-Anweisung NULL-Werte in einer Tabelle überprüft. Durch die effektive Überprüfung von NULL-Werten kann die Datenintegrität gewahrt werden.

Grundlegende NULL-Prüfung

Um Datensätze zu suchen, die in einer bestimmten Spalte NULL enthalten, wird IS NULL verwendet.

SELECT * FROM employees
WHERE middle_name IS NULL;

Diese Abfrage gibt alle Datensätze zurück, bei denen die Spalte middle_name NULL ist.

Überprüfung von Werten, die nicht NULL sind

Umgekehrt wird IS NOT NULL verwendet, um Datensätze zu suchen, bei denen eine bestimmte Spalte nicht NULL ist.

SELECT * FROM employees
WHERE middle_name IS NOT NULL;

Diese Abfrage gibt alle Datensätze zurück, bei denen die Spalte middle_name nicht NULL ist.

Kombinierte Abfragen mit NULL-Bedingungen

Es ist auch möglich, mehrere Bedingungen zu kombinieren, um Datensätze mit NULL-Werten zu finden.

SELECT * FROM employees
WHERE department_id = 3 AND middle_name IS NULL;

Diese Abfrage gibt die Datensätze zurück, bei denen department_id 3 und middle_name NULL sind.

Zusammenfassung

Das Aktualisieren und Einfügen von NULL-Werten in SQL ist eine wichtige Aufgabe beim Datenbankmanagement. NULL repräsentiert den Zustand „kein Wert vorhanden“ und kann mit der INSERT- oder UPDATE-Anweisung leicht verarbeitet werden. Es ist jedoch besondere Vorsicht geboten, wenn es um Vergleiche und Funktionen im Zusammenhang mit NULL geht. Durch den korrekten Umgang mit NULL-Werten lässt sich die Integrität und Qualität der Daten wahren. Verwenden Sie die in diesem Artikel beschriebenen Methoden, um Ihre SQL-Operationen effizienter zu gestalten.

Inhaltsverzeichnis