Изгледите на PostgreSQL ви позволяват лесно да съхранявате заявки и да ги извиквате по-късно. SQL изгледите са много полезни за запазване на заявки, които трябва да изпълнявате често. Ето как да създадете изглед в PostgreSQL с помощта на PostgreSQL изявление за създаване на изглед.
Как да създадете изглед в PostgreSQL
Ето стъпките за създаване на изглед в PostgreSQL. Ето синтаксиса на PostgreSQL изявление за създаване на изглед
CREATE [TEMP | TEMPORARY] VIEW view_name AS SELECT column1, column2..... FROM table_name WHERE [condition];
В горната SQL заявка име_на изглед е името на SQL изглед, където искате да съхранявате вашата SQL заявка. TEMP/TEMPORARY е незадължителна ключова дума за създаване на временни изгледи, които се прекратяват в края на текущата ви сесия.
След ключовата дума AS можете да въведете цялата си SQL заявка, която искате да запишете като изглед.
Ето пример за създаване на изглед в PostgreSQL. Да приемем, че имате следната таблица 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
Да кажем, че искате да създадете SQL изглед от заявка, която изчислява общите продажби на продукт. Ето SQL заявката за създаване на изглед на 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
Бонус за четене:Как да получите първи ред на група в PostgreSQL
PostgreSQL Създаване на изглед от множество таблици
Можете също да създадете изглед в PostgreSQL от множество таблици, като използвате същия подход. Просто заменете заявката SELECT в израза CREATE VIEW, за да извлечете данни от множество таблици.
Ето пример за PostgreSQL CREATE VIEW от множество таблици.
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;
Бонус за четене:Как да попълните липсващите дати в PostgreSQL
Как да покажа дефиниция на изглед в PostgreSQL
Можете лесно да видите дефиницията на изглед в PostgreSQL, като използвате \d+ команда. Ето SQL заявката за показване на дефиниция на изглед
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;
Бонус за четене:Как да изчислим процентил в PostgreSQL
Можете също да направите същото, като използвате pg_get_viewdef функция
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;
Бонус за четене:Как да получите номер на ред в PostgreSQL
Как да махнете изгледи в PostgreSQL
Можете лесно да пуснете изгледи на PostgreSQL, като използвате оператор DROP VIEW.
postgresql# DROP VIEW view_name;
Ето SQL заявката за пускане на изглед в PostgreSQL
postgresql# DROP VIEW sales_summary;
Надяваме се, че можете лесно да създадете изглед в PostgreSQL.
Ubiq улеснява визуализирането на данни за минути и наблюдение в табла за управление в реално време. Опитайте днес!