PostgreSQL Union Alle Anfragen

PostgreSQL Union Alle Anfragen

In diesem Tutorial werden Sie angezeigt.

Wie postgresql Union -Abfrage funktioniert

Der PostgreSQL -Abfrage ist ziemlich einfach. Es funktioniert, indem es zwei oder mehr kombiniert WÄHLEN Datenergebnis zum Erstellen eines einzelnen größeren Satzes.

Wenn wir beispielsweise ein Ergebnis einer SELECT -Anweisung als x und das Ergebnis einer anderen SELECT -Anweisung als Y nehmen, die resultierende UNION Von diesen beiden Aussagen ist die Summe von beiden Wählen Sie X und Y aus ohne Duplikate.

Grundnutzung

Die allgemeine Syntax für die Union -Abfrage in Postgresql Ist:

Wählen Sie COL1, COL2, COL3,… COLN aus TB1 Union Select Col1, Col2, Col3,… coln aus TB2, wo Zustand;

Obwohl Sie meistens bestimmte Spalten auswählen, können Sie andere gültige PostgreSQL -Ausdrücke an die Auswahlanweisungen übergeben.

PostgreSQL Union Query Beispiel

Lassen Sie uns veranschaulichen, wie man die benutzt Gewerkschaftsanfrage Verwenden eines einfachen Beispiels.

Erstellen Sie zunächst eine Beispieldatenbank und füllen Sie sie mit Beispieldaten, wie in den folgenden Abfragen gezeigt:

Datenbank fallen, wenn existiert Union_db;
Datenbank erstellen Union_db;
Droptabelle, wenn existt top_database;
Table top_database erstellen (
id seriell,
db_name varchar nicht null
);
Droptabelle, wenn existiert All_db;
Tabelle erstellen All_db (
id seriell,
db_name varchar
);
In top_database (db_name) values ​​('MySQL'), ('postgreSQL'), ('Microsoft SQL Server'), ('SQLite'), ('MongoDB') einfügen;
In All_db (db_name) values ​​('MySQL'), ('Elasticsearch'), ('Sqlite'), ('DynamoDB'), ('Redis') einfügen;

Verwenden der obigen Beispieldatenbank und Tabellen können wir a ausführen UNION als:

Wählen Sie * aus top_db Union top_database;

Die obige Abfrage sollte einen einzelnen Satz mit den kombinierten Werten wie unten gezeigt zurückgeben:

A Gewerkschaftsanfrage erfolgreich müssen die angegebene Zahl und Reihenfolge der Spalten in den Auswahlanweisungen ähnlich sein, und die Datentypen müssen kompatibel sein.

Postgresql Union alle

Eine Abfrage ähnlich dem Unionserklärung ist die Gewerkschaft alle. Diese Abfrage funktioniert genauso wie die UNION führt aber nicht doppelte Werte aus dem angegebenen Satz ab.

Wir können diese Funktionalität veranschaulichen, indem wir dieselbe Abfrage oben verwenden.

Wählen Sie * aus All_db Union alle aus * aus top_database;

In diesem Fall sollten wir die kombinierten Werte einschließlich der Duplikate zurückgeben, wie unten gezeigt:

Abschluss

Beide Gewerkschaft und Union alle haben ihre spezifischen Anwendungsfälle. Sie sind für Entwickler nützlich, weil sie es einfacher machen, Daten in verschiedene Sets zu aggregieren.