Las vistas de PostgreSQL le permiten almacenar consultas fácilmente y llamarlas más tarde. Las vistas SQL son muy útiles para guardar consultas que necesita ejecutar con frecuencia. Aquí se explica cómo crear una vista en PostgreSQL usando la declaración de creación de vista de PostgreSQL.
Cómo crear una vista en PostgreSQL
Estos son los pasos para crear una vista en PostgreSQL. Esta es la sintaxis de la instrucción Create View de PostgreSQL
CREATE [TEMP | TEMPORARY] VIEW view_name AS SELECT column1, column2..... FROM table_name WHERE [condition];
En la consulta SQL anterior, view_name es el nombre de la vista SQL donde desea almacenar su consulta SQL. TEMP/TEMPORARY es una palabra clave opcional para crear vistas temporales que se eliminan al final de la sesión actual.
Después de la palabra clave AS, puede ingresar la consulta SQL completa que desea guardar como vista.
Aquí hay un ejemplo para crear una vista en PostgreSQL. Supongamos que tiene la siguiente tabla 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
Supongamos que desea crear una vista SQL a partir de una consulta que calcule las ventas totales por producto. Aquí está la consulta SQL para crear una vista de 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
Lectura adicional:Cómo obtener la primera fila por grupo en PostgreSQL
PostgreSQL Crear vista a partir de varias tablas
También puede crear una vista en PostgreSQL a partir de varias tablas utilizando el mismo enfoque. Simplemente reemplace la consulta SELECT en la instrucción CREATE VIEW para obtener datos de varias tablas.
Este es un ejemplo de PostgreSQL CREATE VIEW de varias tablas.
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;
Lectura adicional:Cómo completar las fechas que faltan en PostgreSQL
Cómo mostrar la definición de vista en PostgreSQL
Puede ver fácilmente la definición de vista en PostgreSQL usando \d+ dominio. Aquí está la consulta SQL para mostrar la definición de 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;
Lectura adicional:Cómo calcular el percentil en PostgreSQL
También puede hacer lo mismo usando pg_get_viewdef función
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;
Lectura adicional:cómo obtener el número de fila en PostgreSQL
Cómo descartar vistas en PostgreSQL
Puede eliminar fácilmente las vistas de PostgreSQL mediante la instrucción DROP VIEW.
postgresql# DROP VIEW view_name;
Aquí está la consulta SQL para soltar la vista en PostgreSQL
postgresql# DROP VIEW sales_summary;
Con suerte, puede crear fácilmente una vista en PostgreSQL.
Ubiq facilita la visualización de datos en minutos y la supervisión en paneles en tiempo real. ¡Pruébalo hoy!