Heim > Datenbank > MySQL-Tutorial > Hauptteil

Wie verwende ich den Minus-Operator in MySQL?

青灯夜游
Freigeben: 2020-10-19 15:01:17
Original
4885 Leute haben es durchsucht

MySQL unterstützt den MINUS-Operator nicht, Sie können ihn jedoch mit MySQL JOIN simulieren. Das Syntaxformat lautet „SELECT field list FROM table 1 LEFT JOIN table 2 ON join_predicate WHERE table 2.id IS NULL;“.

Wie verwende ich den Minus-Operator in MySQL?

(Empfohlenes Tutorial: MySQL-Video-Tutorial)

Einführung in den SQL-MINUS-Operator

MINUS enthält eine der drei Operationen des SQL-Standards, UNION, INTERSECT und MINUS.

MINUS vergleicht die Ergebnisse zweier Abfragen und gibt unterschiedliche Zeilen aus der ersten Abfrage zurück, die von der zweiten Abfrage nicht ausgegeben werden. Der Befehl

MINUS wird für zwei SQL-Anweisungen verwendet. Zunächst werden die von der ersten SQL-Anweisung erzeugten Ergebnisse ermittelt und dann überprüft, ob diese Ergebnisse zu den Ergebnissen der zweiten SQL-Anweisung gehören. Wenn dies der Fall ist, werden diese Daten entfernt und erscheinen nicht im Endergebnis. Wenn das Ergebnis der zweiten SQL-Anweisung nicht im Ergebnis der ersten SQL-Anweisung vorhanden ist, werden die Daten verworfen.

Die Syntax des MINUS-Operators wird im Folgenden erklärt:

SELECT column_list_1 FROM table_1
MINUS 
SELECT columns_list_2 FROM table_2;
Nach dem Login kopieren

Die Grundregeln für Abfragen mit dem MINUS-Operator lauten wie folgt:

  • Die Menge und die Reihenfolge der beiden Spalten column_list_1column_list_2 müssen gleich sein.

  • Die Datentypen der entsprechenden Spalten in den beiden Abfragen müssen kompatibel sein.

Angenommen, wir haben zwei Tabellen t1 und t2 mit der folgenden Struktur und den folgenden Daten:

CREATE TABLE t1 (
    id INT PRIMARY KEY
);
 
CREATE TABLE t2 (
    id INT PRIMARY KEY
);
 
INSERT INTO t1 VALUES (1),(2),(3);
INSERT INTO t2 VALUES (2),(3),(4);
Nach dem Login kopieren

Die folgende Abfrage gibt in der Abfrage für Tabelle t1 unterschiedliche Werte zurück, die in den Abfrageergebnissen für Tabelle t2 nicht gefunden werden.

SELECT id FROM t1
MINUS
SELECT id FROM t2;
Nach dem Login kopieren

Wie verwende ich den Minus-Operator in MySQL?

Hier sind die Anweisungen für das MINUS-Diagramm:

Wie verwende ich den Minus-Operator in MySQL?

MySQL-MINUS-Operator

Leider unterstützt MySQL den MINUS-Operator nicht. Sie können es jedoch mit MySQL JOIN simulieren.

Um zwei MINUS-Abfragen zu simulieren, verwenden Sie die folgende Syntax:

SELECT 
    column_list 
FROM 
    table_1
    LEFT JOIN table_2 ON join_predicate
WHERE 
    table_2.id IS NULL;
Nach dem Login kopieren

Die folgende Abfrage verwendet beispielsweise die LEFT JOIN-Klausel, um dieselben Ergebnisse wie der MINUS-Operator zurückzugeben:

SELECT 
    id
FROM
    t1
        LEFT JOIN
    t2 USING (id)
WHERE
    t2.id IS NULL;
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie verwende ich den Minus-Operator in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage