PostgreSQL Ansicht mit Beispiel erstellen
Was bedeutet PostgreSQL Aussicht?
In PostgreSQL, eine Ansicht ist eine Pseudotabelle. Dies bedeutet, dass eine Ansicht keine echte Tabelle ist. Wir können es jedoch als gewöhnliche Tabelle AUSWÄHLEN. Eine Ansicht kann alle oder einige Tabellenspalten enthalten. Eine Ansicht kann auch eine Darstellung mehrerer Tabellen sein.
Die Tabellen werden als Basistabellen bezeichnet. Beim Erstellen einer Ansicht müssen Sie nur eine Abfrage erstellen und ihr dann einen Namen geben. Dies macht sie zu einem nützlichen Tool zum Verpacken komplexer und häufig verwendeter Abfragen.
Erstellen PostgreSQL Views
So erstellen Sie ein PostgreSQL Für die Ansicht verwenden wir die CREATE VIEW-Anweisung. Hier ist die Syntax für diese Anweisung:
CREATE [OR REPLACE] VIEW view-name AS SELECT column(s) FROM table(s) [WHERE condition(s)];
Der OR REPLACE-Parameter ersetzt die Ansicht, wenn sie bereits vorhanden ist. Wenn es weggelassen wird und die Ansicht bereits vorhanden ist, wird ein Fehler zurückgegeben.
Der Parameter view-name ist der Name der Ansicht, die Sie erstellen müssen.
Die WHERE-Bedingung(en) sind Optionen und müssen erfüllt sein, damit ein Datensatz zur Ansicht hinzugefügt werden kann.
Beachten Sie die unten angegebene Preistabelle:
Preis:
Lassen Sie uns eine Ansicht aus der obigen Tabelle erstellen:
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
Der obige Befehl erstellt eine Ansicht basierend auf SELECT-Anweisung. Nur die Datensätze, bei denen der Preis größer als 200 ist, werden der Ansicht hinzugefügt. Die Ansicht hat den Namen Price_View erhalten. Fragen wir es ab, um seinen Inhalt zu sehen:
SELECT * FROM Price_View;
Dies gibt Folgendes zurück:
Obwohl die Basistabelle 4 Datensätze enthält, wurden der Ansicht nur 2 hinzugefügt.
Hier können wir der Ansicht nur eine Spalte hinzufügen. Erstellen wir eine Ansicht, die nur eine Spalte der Preistabelle enthält:
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
Die Ansicht hat den Namen Price_View2 erhalten und enthält nur die Preisspalte der Preistabelle. Lassen Sie uns die Ansicht abfragen, um ihren Inhalt anzuzeigen:
SELECT * FROM Price_View2;
Dies gibt Folgendes zurück:
Gedanken PostgreSQL Views
Die Definition einer Ansicht kann geändert werden, ohne dass sie gelöscht werden muss. Dies geschieht mit der CREATE OR REPLACE VIEW-Anweisung.
Lassen Sie uns dies demonstrieren, indem wir die Ansicht namens Price_View2 aktualisieren.
Price_View2:
Die Buchtabelle sieht wie folgt aus:
Buch:
Die Preistabelle lautet wie folgt:
Preis:
Die folgende Abfrage hilft uns, die Ansicht Price_View2 zu aktualisieren:
CREATE or REPLACE VIEW Price_View2 AS SELECT price, name FROM Book INNER JOIN Price ON Book.id = Price.id WHERE price > 200;
Lassen Sie uns nun die Ansicht abfragen, um ihren Inhalt anzuzeigen:
Die Ansicht wurde geändert und wir haben jetzt zwei Spalten aus zwei verschiedenen Tabellen. Dies wurde mithilfe einer JOIN-Anweisung erreicht.
Löschen PostgreSQL Views
Wann immer Sie eine löschen müssen PostgreSQL Sicht. Sie können die DROP VIEW-Anweisung verwenden. Hier ist die Syntax für die Anweisung:
DROP VIEW [IF EXISTS] view-name;
Der Parameter view-name ist der Name der Ansicht, die gelöscht werden soll.
In dieser Syntax ist IF EXISTS optional. Es ist nur erforderlich. Wenn Sie es nicht angeben und versuchen, eine nicht vorhandene Ansicht zu löschen, erhalten Sie eine Fehlermeldung.
Um beispielsweise die Ansicht mit dem Namen „Price_View2“ zu löschen, können wir die folgende Anweisung ausführen:
DROP VIEW Price_View2;
Die Ansicht wird gelöscht.
Verwenden von pgAdmin
Sehen wir uns nun an, wie diese Aktionen mit pgAdmin ausgeführt werden können.
Erstellen PostgreSQL Views
Um dasselbe über pgAdmin zu erreichen, gehen Sie wie folgt vor:
Schritt 1) Melden Sie sich bei Ihrem pgAdmin-Konto an.
Schritt 2)
- Klicken Sie in der Navigationsleiste links auf Datenbanken.
- Klicken Sie auf Demo.
Schritt 3) Geben Sie die Abfrage im Abfrageeditor ein:
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
Schritt 4) Klicken Sie auf die Schaltfläche „Ausführen“.
Schritt 5) Um den Inhalt der Ansicht anzuzeigen, gehen Sie wie folgt vor:
- Geben Sie den folgenden Befehl in den Abfrage-Editor ein:
- Klicken Sie auf die Schaltfläche „Ausführen“.
SELECT * FROM Price_View;
Dies gibt Folgendes zurück:
Um die Ansicht Price_View2 zu erstellen, gehen Sie wie folgt vor:
Schritt 1) Geben Sie die folgende Abfrage in den Abfrage-Editor ein:
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
Schritt 2) Klicken Sie auf die Schaltfläche „Ausführen“.
Schritt 3) Um den Inhalt der Ansicht anzuzeigen, gehen Sie wie folgt vor:
- Geben Sie die folgende Abfrage in den Abfrage-Editor ein:
- Klicken Sie auf die Schaltfläche „Ausführen“.
SELECT * FROM Price_View2;
Dies gibt Folgendes zurück:
Gedanken PostgreSQL Views
Um dasselbe über pgAdmin zu erreichen, gehen Sie wie folgt vor:
Schritt 1) Melden Sie sich bei Ihrem pgAdmin-Konto an.
Schritt 2)
- Klicken Sie in der Navigationsleiste links auf Datenbanken.
- Klicken Sie auf Demo.
Schritt 3) Geben Sie die Abfrage im Abfrageeditor ein:
CREATE or REPLACE VIEW Price_View2 AS SELECT price, name FROM Book INNER JOIN Price ON Book.id = Price.id WHERE price > 200;
Schritt 4) Klicken Sie auf die Schaltfläche „Ausführen“.
Schritt 5) Geben Sie die folgende Abfrage in den Abfrage-Editor ein:
SELECT * FROM Price_View2;
Dies gibt Folgendes zurück:
Löschen PostgreSQL Views
Um dasselbe über pgAdmin zu erreichen, gehen Sie wie folgt vor:
Schritt 1) Melden Sie sich bei Ihrem pgAdmin-Konto an.
Schritt 2)
- Klicken Sie in der Navigationsleiste links auf Datenbanken.
- Klicken Sie auf Demo.
Schritt 3) Geben Sie die Abfrage im Abfrageeditor ein:
DROP VIEW Price_View2;
Schritt 4) Klicken Sie auf die Schaltfläche „Ausführen“.
Die Ansicht wird gelöscht.
Zusammenfassung
- A PostgreSQL view ist eine Pseudotabelle, das heißt, es handelt sich nicht um eine echte Tabelle.
- Eine Ansicht kann aus einer oder mehreren Tabellen erstellt werden.
- Die Tabellen, aus denen eine Ansicht erstellt wird, werden als Basistabellen bezeichnet.
- Um eine Ansicht zu erstellen, verwenden wir die CREATE OR REPLACE VIEW-Anweisung.
- Um die Definition einer Ansicht zu ändern, verwenden wir die Anweisung CREATE OR REPLACE VIEW.
- Um eine Ansicht zu löschen, verwenden wir die DROP VIEW-Anweisung.
Laden Sie die in diesem Tutorial verwendete Datenbank herunter