PostgreSQL Crear vista con ejemplo

¿Qué es la vista PostgreSQL?

En PostgreSQL, una vista es una pseudotabla. Esto significa que una vista no es una tabla real. Sin embargo, podemos SELECCIONARla como una tabla ordinaria. Una vista puede tener todas o algunas de las columnas de la tabla. Una vista también puede ser una representación de más de una tabla.

Las tablas se denominan tablas base. Al crear una vista, solo necesita crear una consulta y luego darle un nombre, lo que la convierte en una herramienta útil para empaquetar com.plex y consultas de uso común.

Creando vistas PostgreSQL

Para crear una vista PostgreSQL, usamos la declaración CREATE VIEW. Aquí está la sintaxis de esta declaración:

CREATE [OR REPLACE] VIEW view-name AS
  SELECT column(s)
  FROM table(s)
  [WHERE condition(s)];

El parámetro OR REPLACE reemplazará la vista si ya existe. Si se omite y la vista ya existe, se devolverá un error.

El parámetro view-name es el nombre de la vista que necesita crear.

Las condiciones WHERE son opciones y deben cumplirse para que cualquier registro se agregue a la vista.

Considere la tabla de precios que figura a continuación:

Precio:

Creando vistas PostgreSQL

Creemos una vista a partir de la tabla anterior:

CREATE VIEW Price_View AS
  SELECT id, price
  FROM Price
  WHERE price > 200;

El comando anterior creará una vista basada en el Instrucción SELECT. Solo se agregarán a la vista los registros cuyo precio sea mayor a 200. A la vista se le ha dado el nombre Price_View. Consultémoslo para ver su contenido:

SELECT *
FROM Price_View;

Esto devuelve el siguientewing:

Creando vistas PostgreSQL

Aunque la tabla base tiene 4 registros, solo se agregaron 2 a la vista.

Aquí, podemos agregar solo una columna a la vista. Creemos una vista que incluya solo una columna de la tabla de precios:

CREATE VIEW Price_View2 AS
  SELECT price
  FROM Price
  WHERE price > 200;

A la vista se le ha dado el nombre Price_View2 e incluye solo la columna de precio de la tabla de precios. Consultamos la vista para ver su contenido:

SELECT *
FROM Price_View2;

Esto devuelve el siguientewing:

Creando vistas PostgreSQL

Cambiar vistas de PostgreSQL

La definición de una vista se puede cambiar sin tener que eliminarla. Esto se hace usando la instrucción CREATE OR REPLACE VIEW.

Demostremos esto actualizando la vista denominada Price_View2.

Precio_Ver2:

Cambiar vistas de PostgreSQL

La tabla de libros es la siguiente:

Libro:

Cambiar vistas de PostgreSQL

La tabla de precios es la siguiente:

Precio:

Cambiar vistas de PostgreSQL

El following La consulta nos ayudará a actualizar la vista Price_View2:

CREATE or REPLACE VIEW Price_View2 AS
  SELECT price, name
  FROM Book
  INNER JOIN Price
  ON Book.id = Price.id
  WHERE price > 200;

Ahora consultemos la vista para ver su contenido:

Cambiar vistas de PostgreSQL

La vista ha cambiado y ahora tenemos dos columnas de dos tablas diferentes. Esto se ha logrado mediante una declaración JOIN.

Eliminar vistas de PostgreSQL

Cada vez que necesite eliminar una vista de PostgreSQL. Puede utilizar la instrucción DROP VIEW. Aquí está la sintaxis de la declaración:

DROP VIEW [IF EXISTS] view-name;

El parámetro nombre-vista es el nombre de la vista que se va a eliminar.

En esta sintaxis, SI EXISTE es opcional. Sólo es necesario. Si no lo especifica e intenta eliminar una vista que no existe, obtendrá un error.

Por ejemplo, para eliminar la vista denominada Price_View2, podemos ejecutar lo siguientewing declaración:

DROP VIEW Price_View2;

La vista será eliminada.

Usando pgAdmin

Ahora veamos cómo se pueden realizar estas acciones usando pgAdmin.

Creando vistas PostgreSQL

Para lograr lo mismo a través de pgAdmin, haga esto:

Paso 1) Inicie sesión en su cuenta pgAdmin.

Paso 2)

  1. Desde la barra de navegación de la izquierda, haga clic en Bases de datos.
  2. Haga clic en Demostración.

Creando vistas PostgreSQL usando pgAdmin

Paso 3) Escriba la consulta en el editor de consultas:

CREATE VIEW Price_View AS
  SELECT id, price
  FROM Price
  WHERE price > 200;

Paso 4) Haga clic en el botón Ejecutar.

Creando vistas PostgreSQL usando pgAdmin

Paso 5) Para ver el contenido de la vista, haga lo siguientewing:

  1. Escribe lo siguientewing comando en el editor de consultas:
  2. SELECT *
    FROM Price_View;
    
  3. Haga clic en el botón Ejecutar.

Creando vistas PostgreSQL usando pgAdmin

Esto devolverá el siguientewing:

Creando vistas PostgreSQL usando pgAdmin

Para crear la vista Price_View2, haga lo siguientewing:

Paso 1) Escribe lo siguientewing consulta en el editor de consultas:

CREATE VIEW Price_View2 AS
  SELECT price
  FROM Price
  WHERE price > 200;

Paso 2) Haga clic en el botón Ejecutar.

Creando vistas PostgreSQL usando pgAdmin

Paso 3) Para ver el contenido de la vista, haga lo siguientewing:

  1. Escribe lo siguientewing consulta en el editor de consultas:
  2. SELECT *
    FROM Price_View2;
    
  3. Haga clic en el botón Ejecutar.

Creando vistas PostgreSQL usando pgAdmin

Esto devolverá el siguientewing:

Creando vistas PostgreSQL usando pgAdmin

Cambiar vistas de PostgreSQL

Para lograr lo mismo a través de pgAdmin, haga esto:

Paso 1) Inicie sesión en su cuenta pgAdmin.

Paso 2)

  1. Desde la barra de navegación de la izquierda, haga clic en Bases de datos.
  2. Haga clic en Demostración.

Cambiar vistas de PostgreSQL usando pgAdmin

Paso 3) Escriba la consulta en el editor de consultas:

CREATE or REPLACE VIEW Price_View2 AS
  SELECT price, name
  FROM Book
  INNER JOIN Price
  ON Book.id = Price.id
  WHERE price > 200;

Paso 4) Haga clic en el botón Ejecutar.

Cambiar vistas de PostgreSQL usando pgAdmin

Paso 5) Escribe lo siguientewing consulta en el editor de consultas:

SELECT * 
FROM Price_View2;

Esto devolverá el siguientewing:

Cambiar vistas de PostgreSQL usando pgAdmin

Eliminar vistas de PostgreSQL

Para lograr lo mismo a través de pgAdmin, haga esto:

Paso 1) Inicie sesión en su cuenta pgAdmin.

Paso 2)

  1. Desde la barra de navegación de la izquierda, haga clic en Bases de datos.
  2. Haga clic en Demostración.

Eliminar vistas de PostgreSQL usando pgAdmin

Paso 3) Escriba la consulta en el editor de consultas:

DROP VIEW Price_View2;

Paso 4) Haga clic en el botón Ejecutar.

Eliminar vistas de PostgreSQL usando pgAdmin

La vista será eliminada.

Resumen

  • A PostgreSQL La vista es una pseudotabla, lo que significa que no es una tabla real.
  • Se puede crear una vista a partir de una o más tablas.
  • Las tablas a partir de las cuales se crea una vista se conocen como tablas base.
  • Para crear una vista, utilizamos la instrucción CREATE OR REPLACE VIEW.
  • Para cambiar la definición de una vista, utilizamos la instrucción CREATE OR REPLACE VIEW.
  • Para eliminar una vista, utilizamos la declaración DROP VIEW.

Descargue la Base de Datos utilizada en este Tutorial