0% ont trouvé ce document utile (0 vote)
24 vues4 pages

TP SQL

Le document présente des requêtes SQL pour interroger une base de données de films et d'artistes. Il couvre des questions sur la sélection de films, d'artistes, et l'utilisation de jointures pour relier les tables. Des agrégations sont également abordées pour obtenir des statistiques sur les films et les réalisateurs.

Transféré par

Sanders Tano
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
24 vues4 pages

TP SQL

Le document présente des requêtes SQL pour interroger une base de données de films et d'artistes. Il couvre des questions sur la sélection de films, d'artistes, et l'utilisation de jointures pour relier les tables. Des agrégations sont également abordées pour obtenir des statistiques sur les films et les réalisateurs.

Transféré par

Sanders Tano
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

BASE DE DONNEES : SQL

1. Ques on 1.1: Titre et année de paru on des films

COMMANDE:

select tre,annee from film;

2. Ques on 1.2: Ar stes (Prénoms, Nom et date de naissance) dont le


nom commence par 'H'
COMMANDE:
SELECT prenom,nom ,annee_naissance FROM Ar ste WHERE nom LIKE "H%";

3. Ques on 1.3: Films (Titre et année de paru on) dont le résumé con ent
le mot 'police'. Vérifiez en affichant le résumé de quelques uns de ces
films.

COMMANDE:

select tre,annee from film WHERE resume LIKE "%POLICE%";

4. Ques on 1.4: Prénom de l'actrice nommée 'Gudmundsdo r'

COMMANDE: SELECT prenom FROM Artiste where nom="Gudmundsdottir";


Requêtes avec jointures (Bien comprendre les exemples de jointures qui
sontdans le support de cours)
5. Ques on 2.1: Liste des films ( tre, année) dirigés par Hitchcock.
Indica on: Ici la jointure perme ra de faire correspondre chaque film
avec son réalisateur. Ensuite l'u lisa on de WHERE va perme re de
faire une sélec on après la jointure.

Commande : select tre, annee from film join ar ste on


id_realisateur=ar ste.id where nom="Hitchcock";

6. Ques on 2.2: Films dans lesquels joue Bruce Willis. Indica on: les
jointures peuvent s'enchaîner, le résultat d'une jointure étant une table
qui peut être jointe à une autre table.

Commande : select tre, annee, nom_role from film join role on


id_film=film.id join ar ste on id_acteur=ar ste.id where
nom="Willis"and prenom="Bruce";

7. Ques on 2.3: Films avec Tim burton comme me eur en scène, et


Johnny Depp comme acteur. Indica on: On peut faire appel à plusieurs
copies de la même table. On u lise AS pour les renommer afin de lever
l'ambiguïté.

COMMANDE : Select titre,annee from film join artiste as A1 on


id_realisateur= A1.id join role on id_film=film.id join artiste as A2 on
id_acteur= A2.id where A1.prenom="Tim" and A1.nom="Burton" and
A2.prenom="Johnny" and A2.nom="Depp";
8. Ques on 2.4: Me eurs en scène ayant joué en tant qu'acteur.
indica on: voir comment u liser IN dans le support de cours.
COMMANDE: select dis nct prenom,nom,annee_naissance from ar ste join
role on ar ste.id=id_acteur join film on id_film=film.id where id_acteur IN(
select dis nct id_realisateur from film as film1);

9. Ques on 2.5: Me eur en scène ayant joué en tant qu'acteur dans un de


ses propres films.
COMMANDE : select dis nct prenom,nom,annee_naissance from ar ste join
role on ar ste.id=id_acteur join film on id_film=film.id where
id_acteur=id_realisateur;
Ou
SELECT dis nct prenom,nom,annee_naissance FROM Ar ste JOIN role ON
id_acteur=Ar ste.id JOIN film ON id_film=film.id WHERE
id_acteur=id_realisateur ORDER BY nom,prenom;

Agrégats

Ques on 3.1: Nombre de films dans la BD

COMMANDE : select count(*) from film;

10.Ques on 3.2: Année du film le plus ancien et du film le plus récent

COMMANDE : select titre, annee from film where annee <= all ( select
annee from film) or annee >= all (select annee from film);
ou select MAX(annee),MIN(annee) from film;

11.Ques on 3.3: Pour chaque réalisateur, le nombre de films qu'il a tourné


COMMANDE:
SELECT prenom,nom,annee_naissance,count(*) AS nombre_films from Artiste
JOIN film on id_realisateur=Artiste.id GROUP BY id_realisateur ORDER BY
nombre_films DESC;
Ques on supplemen aire:

12.tous ceux qui ont été realisateur


COMMANDE : select distinct prenom,nom,annee_naissance from artiste join
film on artiste.id=id_realisateur;

13.tous ceux qui ont été acteur

COMMANDE: select prenom,nom,annee_naissance from artiste join


role on artiste.id=id_acteur;

Vous aimerez peut-être aussi