Créer une vue à partir d'autres vues
Les vues peuvent être créées à partir de requêtes qui incluent d'autres vues. Ceci est utile lorsque vous avez un schéma complexe, potentiellement dû à la normalisation, car cela permet de réduire le nombre de pages JOINS
nécessaires. Le plus gros problème est le suivi des dépendances, en particulier la manière dont la modification ou l'abandon d'une vue peut affecter d'autres vues.
Dans les prochains exercices, nous continuerons à utiliser les données des critiques Pitchfork. Deux vues nous intéressent dans cet exercice. top_15_2017
contient les 15 critiques les mieux notées publiées en 2017 avec les colonnes reviewid
,title
, et score
. artist_title
renvoie une liste de tous les titres critiqués et de leurs artistes respectifs avec les colonnes reviewid
, title
, et artist
. À partir de ces vues, nous voulons créer une nouvelle vue qui regroupe les artistes ayant obtenu les meilleurs scores en 2017.
Cet exercice fait partie du cours
Conception de la base de données
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
-- Create a view with the top artists in 2017
___ ___ top_artists_2017 ___
-- with only one column holding the artist field
SELECT artist_title.___ FROM ___
INNER JOIN ___
ON ___.___ = ___.___;
-- Output the new view
SELECT * FROM ___;