Vistas SQL

Cómo crear vistas e interactuar con ellas en una base de datos SQL

Una cosa interesante que puede hacer con SQL es crear unvista.

Una vista es como una tabla, excepto que en lugar de ser una tabla real, por sí sola, se construye dinámicamente mediante el resultado de una consulta SELECT.

Usemos el ejemplo que usamos en la lección de combinaciones:

CREATE TABLE people (
  age INT NOT NULL,
  name CHAR(20) NOT NULL PRIMARY KEY
);

CREATE TABLE cars ( brand CHAR(20) NOT NULL, model CHAR(20) NOT NULL, owner CHAR(20) NOT NULL PRIMARY KEY );

Agregamos algunos datos:

INSERT INTO people VALUES (37, 'Flavio');
INSERT INTO people VALUES (8, 'Roger');
INSERT INTO cars VALUES ('Ford', 'Fiesta', 'Flavio');
INSERT INTO cars VALUES ('Ford', 'Mustang', 'Roger');

Podemos crear una vista que llamamoscar_ageque siempre contiene la correlación entre un modelo de automóvil y la edad de su propietario:

CREATE VIEW car_age AS SELECT model, age AS owner_age FROM people JOIN cars ON people.name = cars.owner;

Aquí está el resultado con el que podemos inspeccionarSELECT * FROM car_age:

        model         | owner_age 
----------------------+-----------
 Fiesta               |        37
 Mustang              |         8

The view is persistent, and will look like a table in your database. You can delete a view using DROP VIEW:

DROP VIEW car_age

More database tutorials: