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:

Erstellen PostgreSQL Views

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:

Erstellen PostgreSQL Views

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:

Erstellen PostgreSQL Views

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:

Gedanken PostgreSQL Views

Die Buchtabelle sieht wie folgt aus:

Buch:

Gedanken PostgreSQL Views

Die Preistabelle lautet wie folgt:

Preis:

Gedanken PostgreSQL Views

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:

Gedanken PostgreSQL Views

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)

  1. Klicken Sie in der Navigationsleiste links auf Datenbanken.
  2. Klicken Sie auf Demo.

Erstellen PostgreSQL Ansichten mit pgAdmin

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“.

Erstellen PostgreSQL Ansichten mit pgAdmin

Schritt 5) Um den Inhalt der Ansicht anzuzeigen, gehen Sie wie folgt vor:

  1. Geben Sie den folgenden Befehl in den Abfrage-Editor ein:
  2. SELECT *
    FROM Price_View;
    
  3. Klicken Sie auf die Schaltfläche „Ausführen“.

Erstellen PostgreSQL Ansichten mit pgAdmin

Dies gibt Folgendes zurück:

Erstellen PostgreSQL Ansichten mit pgAdmin

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“.

Erstellen PostgreSQL Ansichten mit pgAdmin

Schritt 3) Um den Inhalt der Ansicht anzuzeigen, gehen Sie wie folgt vor:

  1. Geben Sie die folgende Abfrage in den Abfrage-Editor ein:
  2. SELECT *
    FROM Price_View2;
    
  3. Klicken Sie auf die Schaltfläche „Ausführen“.

Erstellen PostgreSQL Ansichten mit pgAdmin

Dies gibt Folgendes zurück:

Erstellen PostgreSQL Ansichten mit pgAdmin

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)

  1. Klicken Sie in der Navigationsleiste links auf Datenbanken.
  2. Klicken Sie auf Demo.

Gedanken PostgreSQL Ansichten mit pgAdmin

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“.

Gedanken PostgreSQL Ansichten mit pgAdmin

Schritt 5) Geben Sie die folgende Abfrage in den Abfrage-Editor ein:

SELECT * 
FROM Price_View2;

Dies gibt Folgendes zurück:

Gedanken PostgreSQL Ansichten mit pgAdmin

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)

  1. Klicken Sie in der Navigationsleiste links auf Datenbanken.
  2. Klicken Sie auf Demo.

Löschen PostgreSQL Ansichten mit pgAdmin

Schritt 3) Geben Sie die Abfrage im Abfrageeditor ein:

DROP VIEW Price_View2;

Schritt 4) Klicken Sie auf die Schaltfläche „Ausführen“.

Löschen PostgreSQL Ansichten mit pgAdmin

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