Cinéma: exercices de SQL

La base de données

La base de données que nous allons manipuler est une base de données sur les films et les cinémas de Grenoble. Son schéma est le suivant:

Ou, sous forme graphique:

Relations

Requêtes mono-table

  1. Nom de l'acteur numéro 2
  2. Titre du film numéro 3
  3. Titre, année de sortie et réalisateur des films français. Attention: contrairement à Access, Postgres fait la distinction entre minuscules et majuscules dans les comparaisons.
  4. Titres des films avec leur réalisateur, dans l'ordre alphabétique des titres de film
  5. Nom des réalisateurs qui commencent par un T.

Correction

Jointures simples

  1. Noms et numéros des acteurs du film "Cop"
  2. Années de sortie des films tournés avec Gabin
  3. Films à l'affiche de la quatrième semaine dans chaque salle du cinéma gaumont
  4. Acteurs qui ont tourné avec Truffaut comme réalisateur
  5. Adresses des cinémas où passe un film réalisé par Crichton
  6. Rues, salles et nombre de places des cinémas où sont joués des films sortis en 1984 et dans lesquels joue Delon
  7. Titre et semaine de programmation des films dans lesquels joue Deneuve ou Eastwood
  8. Pour chaque réalisateur, nom des acteurs qui ont tourné sous sa direction en 1989, trié par ordre alphabétique de nom de réalisateur puis par ordre alphabétique inverse de nom d'acteur.
  9. Films où le réalisateur est aussi acteur

Correction

Regroupements

  1. Afficher pour le réalisateur Mieville, le nombre de films, en nommant nbreFilms le titre de la colonne.
  2. Afficher pour chaque réalisateur, le nombre de films, en commençant par celui qui a réalisé le plus de films.
  3. Afficher pour chaque réalisateur, le nombre de films, pour les réalisateurs qui ont fait plus d'un film.
  4. Nombre de semaines de programmation de chaque film.
  5. Titre des films qui passaient la semaine 4, avec le nombre de cinémas dans lesquels ils étaient programmés, limités à ceux programmés dans au moins 4 cinémas, triés dans l'ordre du nombre de cinémas dans lesquels ils étaient programmés.
  6. Box office (=les films dans l'ordre décroissant du nombre d'entrées) de la semaine 4 (titre, réalisateur, nombre d'entrées).

Correction

Auto-jointures et sous-requêtes

  1. Avec une sous-requête, afficher les films qui ont été tournés la même année que Nikita
  2. Même question avec auto-jointure
  3. Acteurs partenaires de Deneuve
  4. Réalisateurs ayant joué dans des films qu'ils n'ont pas réalisés eux-même
  5. Réalisateurs et noms des films précédés dans la programmation par un film dans lequel joue Pfeiffer
  6. Liste des acteurs avec le nombre de leurs partenaires (c'est à dire le nombre des acteurs avec lesquels ils ont joué dans au moins un film), dans l'ordre décroissant du nombre de partenaires.
  7. Titre, année et pays des films pour lesquels il existe au moins un autre film réalisé la même année dans le même pays.
  8. Analyse de la concurrence: pour chaque paire de cinémas (C1, C2), nombre de films identiques programmés simultanément. La liste doit être triée par C1 puis par nombre de films simultanés (dans l'ordre décroissant), puis par C2.
  9. Noms des cinémas ayant programmé un même film dans des salles différentes.
  10. Pour chaque pays, donnez le nombre moyen d'acteurs par film.
  11. Pour chaque année, noms des cinémas ayant eu à l'affiche tous les films sortis cette année.
  12. Films dans lesquels ont joué Deneuve et Eastwood

Correction