Widoki PostgreSQL pozwalają na łatwe przechowywanie zapytań i późniejsze ich wywoływanie. Widoki SQL są bardzo przydatne do zapisywania zapytań, które trzeba często uruchamiać. Oto jak utworzyć widok w PostgreSQL za pomocą instrukcji tworzenia widoku PostgreSQL.
Jak utworzyć widok w PostgreSQL
Oto kroki, aby utworzyć widok w PostgreSQL. Oto składnia instrukcji tworzenia widoku PostgreSQL
CREATE [TEMP | TEMPORARY] VIEW view_name AS SELECT column1, column2..... FROM table_name WHERE [condition];
W powyższym zapytaniu SQL view_name to nazwa widoku SQL, w którym chcesz przechowywać zapytanie SQL. TEMP/TEMPORARY to opcjonalne słowo kluczowe do tworzenia tymczasowych widoków, które są usuwane pod koniec bieżącej sesji.
Po słowie kluczowym AS możesz wpisać całe zapytanie SQL, które chcesz zapisać jako widok.
Oto przykład tworzenia widoku w PostgreSQL. Załóżmy, że masz poniższą tabelę 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
Załóżmy, że chcesz utworzyć widok SQL na podstawie zapytania, które oblicza całkowitą sprzedaż na produkt. Oto zapytanie SQL do utworzenia widoku 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
Przeczytaj bonus:Jak uzyskać pierwszy wiersz na grupę w PostgreSQL
PostgreSQL Utwórz widok z wielu tabel
Możesz także utworzyć widok w PostgreSQL z wielu tabel, używając tego samego podejścia. Wystarczy zastąpić zapytanie SELECT w instrukcji CREATE VIEW, aby pobrać dane z wielu tabel.
Oto przykład PostgreSQL CREATE VIEW z wielu tabel.
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;
Przeczytaj bonus:Jak wypełnić brakujące daty w PostgreSQL
Jak wyświetlić definicję widoku w PostgreSQL
Możesz łatwo zobaczyć definicję widoku w PostgreSQL za pomocą \d+ Komenda. Oto zapytanie SQL, aby wyświetlić definicję widoku
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;
Przeczytaj bonus:Jak obliczyć percentyl w PostgreSQL
Możesz również zrobić to samo za pomocą pg_get_viewdef funkcja
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;
Przeczytaj bonus:Jak uzyskać numer wiersza w PostgreSQL
Jak porzucić widoki w PostgreSQL
Możesz łatwo upuścić widoki PostgreSQL za pomocą instrukcji DROP VIEW.
postgresql# DROP VIEW view_name;
Oto zapytanie SQL do upuszczenia widoku w PostgreSQL
postgresql# DROP VIEW sales_summary;
Mamy nadzieję, że możesz łatwo utworzyć widok w PostgreSQL.
Ubiq ułatwia wizualizację danych w ciągu kilku minut i monitorowanie w pulpitach nawigacyjnych w czasie rzeczywistym. Wypróbuj już dziś!