Articles

PostgreSQL SELECT INTO

Zusammenfassung: In diesem Tutorial lernen Sie, wie Sie das PostgreSQL SELECT INTO Statement verwenden, um eine neue Tabelle aus der Ergebnismenge einer Abfrage zu erstellen.

Wenn Sie auf der Suche nach einer Möglichkeit sind, Daten in Variablen auszuwählen, sollten Sie sich die PL/pgSQL SELECT INTO-Anweisung ansehen.

Einführung in die PostgreSQL SELECT INTO-Anweisung

Die PostgreSQL SELECT INTO-Anweisung erstellt eine neue Tabelle und fügt Daten, die von einer Abfrage zurückgegeben werden, in die Tabelle ein.

Die neue Tabelle hat Spalten mit den gleichen Namen wie die Spalten der Ergebnismenge der Abfrage. Im Gegensatz zu einer regulären SELECT-Anweisung gibt die SELECT INTO-Anweisung kein Ergebnis an den Client zurück.

Im Folgenden wird die Syntax der PostgreSQL-Anweisung SELECT INTO veranschaulicht:

SELECT select_listINTO new_table_nameFROM table_nameWHERE search_condition;
Code language: SQL (Structured Query Language) (sql)

Um eine neue Tabelle mit der Struktur und den Daten aus einer Ergebnismenge zu erstellen, geben Sie den Namen der neuen Tabelle nach dem Schlüsselwort INTO an.

Das TEMP oder TEMPORARY-Schlüsselwort ist optional; es ermöglicht Ihnen, stattdessen eine temporäre Tabelle zu erstellen.

Das UNLOGGED-Schlüsselwort, falls vorhanden, erstellt die neue Tabelle als nicht protokollierte Tabelle.

Mit der WHERE-Klausel können Sie die Zeilen aus den ursprünglichen Tabellen angeben, die in die neue Tabelle eingefügt werden sollen. Neben der WHERE-Klausel können Sie auch andere Klauseln in der SELECT-Anweisung verwenden, wie zum Beispiel INNER JOINLEFT JOINGROUP BY, und HAVING.

Beachten Sie, dass Sie die Anweisung SELECT INTO in PL/pgSQL nicht verwenden können, da diese die INTO-Klausel anders interpretiert. In diesem Fall können Sie die CREATE TABLE AS-Anweisung verwenden, die mehr Funktionalität bietet als die SELECT INTO-Anweisung.

PostgreSQL SELECT INTO Beispiele

Zur Demonstration verwenden wir die film-Tabelle aus der Beispieldatenbank.

PostgreSQL SELECT INTO Beispieltabelle

Die folgende Anweisung erstellt eine neue Tabelle namens film_r, die Filme mit der Bewertung R und der Verleihdauer 5 Tage aus der Tabelle film enthält.

SELECT film_id, title, rental_rateINTO TABLE film_rFROM filmWHERE rating = 'R'AND rental_duration = 5ORDER BY title;
Code language: SQL (Structured Query Language) (sql)

Um die Erstellung der Tabelle zu überprüfen, können Sie Daten aus der Tabelle film_r abfragen:

SELECT * FROM film_r;
Code language: SQL (Structured Query Language) (sql)

Die folgende Anweisung erstellt eine temporäre Tabelle mit dem Namen short_film, die die Filme enthält, deren Länge unter 60 Minuten liegt.

Code language: SQL (Structured Query Language) (sql)

Das Folgende zeigt die Daten aus der Tabelle short_film:

SELECT * FROM short_film;
Code language: SQL (Structured Query Language) (sql)

In diesem Lernprogramm, haben Sie gelernt, wie Sie die PostgreSQL SELECT INTO-Anweisung verwenden, um eine neue Tabelle aus der Ergebnismenge einer Abfrage zu erstellen.

  • War dieses Tutorial hilfreich?
  • JaNein

Eine Antwort schreiben

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.