Vues SQL

Comment créer des vues et interagir avec elles dans une base de données SQL

Une chose intéressante que vous pouvez faire avec SQL est de créer unvue.

Une vue est comme une table, sauf qu'au lieu d'être une vraie table, elle est construite dynamiquement par le résultat d'une requête SELECT.

Utilisons l'exemple que nous avons utilisé dans la leçon sur les jointures:

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 );

Nous ajoutons quelques données:

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');

Nous pouvons créer une vue que nous appelonscar_agequi contient toujours la corrélation entre un modèle de voiture et l'âge de son propriétaire:

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

Voici le résultat avec lequel nous pouvons inspecterSELECT * 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: