UNION gibt nur eindeutige Zeilen zurück, während UNION ALL doppelte Zeilen enthält; UNION dedupliziert vor dem Zusammenführen, UNION ALL dedupliziert jedoch keine Zeilen.
Unterschied zwischen UNION und UNION ALL in SQL
UNION und UNION ALL sind SQL-Operatoren, die zum Zusammenführen von Zeilen aus zwei oder mehr Tabellen verwendet werden. Es gibt jedoch grundlegende Unterschiede im Umgang mit doppelten Zeilen.
UNION
UNION ALL
Beispiel
Angenommen, es gibt zwei Tabellen T1 und T2, wie unten gezeigt:
<code>T1: +----+----+ | ID | Name | +----+----+ | 1 | John | | 2 | Susan | | 3 | Mary | +----+----+ T2: +----+----+ | ID | Name | +----+----+ | 2 | Susan | | 4 | Bob | +----+----+</code>
Wenn Sie diese beiden Tabellen mit dem UNION-Operator zusammenführen:
<code>SELECT * FROM T1 UNION SELECT * FROM T2;</code>
Das Ergebnis ist:
<code>+----+----+ | ID | Name | +----+----+ | 1 | John | | 2 | Susan | | 3 | Mary | | 4 | Bob | +----+----+</code>
wobei die doppelten Zeilen ( ID = 2, Name = Susan) wurde gelöscht.
Wenn Sie diese beiden Tabellen mit dem UNION ALL-Operator zusammenführen:
<code>SELECT * FROM T1 UNION ALL SELECT * FROM T2;</code>
Das Ergebnis wird sein:
<code>+----+----+ | ID | Name | +----+----+ | 1 | John | | 2 | Susan | | 2 | Susan | | 3 | Mary | | 4 | Bob | +----+----+</code>
wobei die doppelten Zeilen bereits im Ergebnis enthalten sind.
Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen Union und Union All in SQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!