Nicht übereinstimmende Zeilen in SQL-Tabellen: Auswahl disjunkter Daten
Bei der Datenbankverwaltung ist es häufig erforderlich, Datensätze aus einer Tabelle abzurufen existieren nicht in einem anderen. Dies wird als Auswahl nicht übereinstimmender Zeilen bezeichnet. Stellen Sie sich das Szenario vor, in dem Sie zwei Tabellen haben, Tabelle1 und Tabelle2, die jeweils Datensätze mit den Spalten „Vorname“, „Nachname“ und „Geburtsdatum“ enthalten.
Problem: Identifizieren und zeigen Sie die Zeilen in Tabelle1 an, die nicht vorhanden sind in Tabelle2.
Lösung:
Die Unterabfrage kann strukturiert werden um Zeilen aus Tabelle1 basierend auf einer bestimmten Spalte auszuwählen, in der die passende Zeile in Tabelle2 nicht vorhanden ist.
Geänderte Abfrage:
SELECT * FROM Table1 WHERE FirstName NOT IN (SELECT FirstName FROM Table2)
In dieser modifizierten Abfrage haben wir Geben Sie die Spalte „Vorname“ für den Vergleich an, da es sich um eine eindeutige Kennung für Zeilen in beiden Tabellen handelt. Die NOT IN-Klausel stellt sicher, dass nur Zeilen aus Tabelle1 mit FirstName-Werten ausgewählt werden, die in Tabelle2 nicht vorhanden sind.
Diese Abfrage gibt alle Zeilen aus Tabelle1 zurück, die nicht in Tabelle2 enthalten sind, und stellt eine Liste eindeutiger Datensätze bereit. Die Ausgabe sollte erfolgen:
+-----------+----------+------------+ | FirstName | LastName | BirthDate | +-----------+----------+------------+ | Yamila | Diaz | 1972-03-04 | +-----------+----------+------------+
Diese Lösung nutzt Unterabfragelogik, um den Vergleich durchzuführen und effektiv die disjunkten Datensätze zwischen den beiden Tabellen auszuwählen.
Das obige ist der detaillierte Inhalt vonWie wähle ich nicht übereinstimmende Zeilen zwischen zwei SQL-Tabellen aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!