5. Vistas

Las vistas son tablas virtuales que son creadas a partir de unos filtros o relaciones. Nos ahorran tiempo y simplifican ciertas consultas.

Para crear una vista utilizaremos:

CREATE VIEW [nombre de vista] AS SELECT [Columnas] FROM [tabla] WHERE [condicionales] ORDER BY [columna] ASC/DESC LIMIT [posición] OFFSET [número de filas];

Y para eliminarla.

DROP VIEW [nombre de vista];

En el siguiente ejemplo voy a crear una vista de las canciones (Track) del género Jazz.

CREATE VIEW tracks_jazz AS SELECT * FROM Track WHERE GenreId = (SELECT GenreId FROM Genre WHERE Name = 'Jazz');

Ahora ya puedo realizar consultas.

SELECT * FROM tracks_jazz;
63  Desafinado  8   1   2
64  Garota De Ipanema   8   1   2
65  Samba De Uma Nota Só (One Note Samba)   8   1   2
66  Por Causa De Você   8   1   2
...

O incluso aplicando filtros. Mostremos todas las canciones (Track) que empiecen por S.

SELECT * FROM tracks_jazz WHERE Name LIKE 'S%';
65  Samba De Uma Nota Só (One Note Samba)   8   1   2       137273  4535401
70  Se Todos Fossem Iguais A Você (Instrumental)    8   1   2       134948  4393377
124 Snoopy's search-Red baron   13  1   2   Billy Cobham    456071  15075616
125 Spanish moss-"A sound portrait"-Spanish moss    13  1   2   Billy Cobham    248084  8217867
127 Stratus 13  1   2   Billy Cobham    582086  19115680
...
Actividad 1

De la tabla Customer crea una vista llamada Customer_with_companies, donde estarán incluidos todos los resultados salvo cuando Company sea NULL. A partir de la vista realiza las siguientes acciones.

  1. Ordena los resultados por orden alfabético de Company.
  2. Muestra que compañías son de Brazil.

This work is under a Attribution-NonCommercial-NoDerivatives 4.0 International license.

Will you buy me a coffee?