Le viste PostgreSQL ti consentono di archiviare facilmente le query e chiamarle in un secondo momento. Le viste SQL sono molto utili per salvare le query che devi eseguire frequentemente. Ecco come creare una vista in PostgreSQL usando l'istruzione di creazione vista di PostgreSQL.
Come creare una vista in PostgreSQL
Ecco i passaggi per creare una vista in PostgreSQL. Ecco la sintassi di PostgreSQL create view statement
CREATE [TEMP | TEMPORARY] VIEW view_name AS SELECT column1, column2..... FROM table_name WHERE [condition];
Nella query SQL sopra, view_name è il nome della vista SQL in cui si desidera archiviare la query SQL. TEMP/TEMPORARY è una parola chiave facoltativa per creare visualizzazioni temporanee che vengono eliminate alla fine della sessione corrente.
Dopo la parola chiave AS, puoi inserire l'intera query SQL che desideri salvare come vista.
Ecco un esempio per creare una vista in PostgreSQL. Supponiamo che tu abbia la seguente tabella 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
Supponiamo di voler creare una vista SQL da una query che calcola le vendite totali per prodotto. Ecco la query SQL per creare la vista PostgreSQL.
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
Bonus Leggi:Come ottenere la prima riga per gruppo in PostgreSQL
PostgreSQL Crea vista da più tabelle
Puoi anche creare viste in PostgreSQL da più tabelle usando lo stesso approccio. Basta sostituire la query SELECT nell'istruzione CREATE VIEW per recuperare i dati da più tabelle.
Ecco un esempio di PostgreSQL CREATE VIEW da più tabelle.
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;
Bonus Leggi:Come riempire le date mancanti in PostgreSQL
Come mostrare la definizione della vista in PostgreSQL
Puoi facilmente vedere la definizione della vista in PostgreSQL usando \d+ comando. Ecco la query SQL per mostrare la definizione della vista
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 Leggi:Come calcolare il percentile in PostgreSQL
Puoi anche fare la stessa cosa usando pg_get_viewdef funzione
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;
Bonus Lettura:come ottenere il numero di riga in PostgreSQL
Come eliminare le visualizzazioni in PostgreSQL
Puoi facilmente eliminare le viste PostgreSQL usando l'istruzione DROP VIEW.
postgresql# DROP VIEW view_name;
Ecco la query SQL per rilasciare la visualizzazione in PostgreSQL
postgresql# DROP VIEW sales_summary;
Si spera che tu possa facilmente creare una vista in PostgreSQL.
Ubiq semplifica la visualizzazione dei dati in pochi minuti e il monitoraggio in dashboard in tempo reale. Provalo oggi!