Mit PostgreSQL-Ansichten können Sie Abfragen einfach speichern und später aufrufen. SQL-Ansichten sind sehr nützlich, um Abfragen zu speichern, die Sie häufig ausführen müssen. So erstellen Sie eine Ansicht in PostgreSQL mit der PostgreSQL-Anweisung create view.
So erstellen Sie eine Ansicht in PostgreSQL
Hier sind die Schritte zum Erstellen einer Ansicht in PostgreSQL. Hier ist die Syntax der PostgreSQL-Create-View-Anweisung
CREATE [TEMP | TEMPORARY] VIEW view_name AS SELECT column1, column2..... FROM table_name WHERE [condition];
In der obigen SQL-Abfrage view_name ist der Name der SQL-Ansicht, in der Sie Ihre SQL-Abfrage speichern möchten. TEMP/TEMPORARY ist ein optionales Schlüsselwort zum Erstellen temporärer Ansichten, die am Ende Ihrer aktuellen Sitzung gelöscht werden.
Nach dem Schlüsselwort AS können Sie Ihre gesamte SQL-Abfrage eingeben, die Sie als Ansicht speichern möchten.
Hier ist ein Beispiel zum Erstellen einer Ansicht in PostgreSQL. Angenommen, Sie haben die folgende Tabelle product_sales.
postgres=# select * from product_sales; product | order_date | sale ---------+------------+------ A | 2020-05-01 | 250 B | 2020-05-01 | 350 C | 2020-05-01 | 1250 A | 2020-05-02 | 450 B | 2020-05-02 | 650 C | 2020-05-02 | 1050 A | 2020-05-03 | 150 B | 2020-05-03 | 250 C | 2020-05-03 | 1850
Angenommen, Sie möchten eine SQL-Ansicht aus einer Abfrage erstellen, die den Gesamtumsatz pro Produkt berechnet. Hier ist die SQL-Abfrage zum Erstellen einer PostgreSQL-Ansicht.
postgres=# create view sales_summary as select product, sum(sale) from product_sales group by product; postgres=# select * from sales_summary; product | sum ---------+------ B | 1250 C | 4150 A | 850
Bonuslektüre:So erhalten Sie die erste Zeile pro Gruppe in PostgreSQL
PostgreSQL-Ansicht aus mehreren Tabellen erstellen
Sie können mit demselben Ansatz auch eine Ansicht in PostgreSQL aus mehreren Tabellen erstellen. Ersetzen Sie einfach die SELECT-Abfrage in der CREATE VIEW-Anweisung, um Daten aus mehreren Tabellen abzurufen.
Hier ist ein Beispiel für PostgreSQL CREATE VIEW aus mehreren Tabellen.
postgres=# create view multi_table as select product,sale,order_date, order_id from product_sales,orders where product_sales.order_id=orders.order_id;
Bonuslektüre:Wie man fehlende Daten in PostgreSQL einträgt
Ansichtsdefinition in PostgreSQL anzeigen
Sie können die Ansichtsdefinition in PostgreSQL ganz einfach mit \d+ anzeigen Befehl. Hier ist die SQL-Abfrage zum Anzeigen der Ansichtsdefinition
postgres=# \d+ sales_summary; View "public.sales_summary" Column | Type | Modifiers | Storage | Description ---------+------------------------+-----------+----------+------------- product | character varying(255) | | extended | sum | bigint | | plain | View definition: SELECT product_sales.product, sum(product_sales.sale) AS sum FROM product_sales GROUP BY product_sales.product;
Bonus-Lesetext:So berechnen Sie das Perzentil in PostgreSQL
Sie können dasselbe auch mit pg_get_viewdef tun Funktion
postgres=# select pg_get_viewdef('sales_summary', true); pg_get_viewdef ------------------------------------ SELECT product_sales.product, + sum(product_sales.sale) AS sum+ FROM product_sales + GROUP BY product_sales.product;
Bonuslektüre:So erhalten Sie die Zeilennummer in PostgreSQL
So löschen Sie Ansichten in PostgreSQL
Sie können PostgreSQL-Ansichten einfach mit der DROP VIEW-Anweisung löschen.
postgresql# DROP VIEW view_name;
Hier ist die SQL-Abfrage zum Löschen der Ansicht in PostgreSQL
postgresql# DROP VIEW sales_summary;
Hoffentlich können Sie ganz einfach eine Ansicht in PostgreSQL erstellen.
Ubiq macht es einfach, Daten innerhalb von Minuten zu visualisieren und in Echtzeit-Dashboards zu überwachen. Probieren Sie es noch heute aus!