Faire du Cinéma

[30 minutes]

On considère les deux relations suivantes :

1
FILMS (titre, pays, année, réalisateur, durée)
2
ACTEURS (titre, acteur)

où les attributs ont les significations et les types suivants :

  • titre : titre d'un film (chaîne 50 caractères)

  • pays : pays d'où un film est originaire (chaîne 10 caractères)

  • annee : année de sortie du film (entier 4 chiffres)

  • realisateur : nom du réalisateur du film (chaîne 20 caractères)

  • duree : durée du film en minutes (entier 3 chiffres)

  • acteur : nom d'acteur (chaîne 20 caractères)

La relation FILMS donne pour chaque film, identifié par son titre, le pays, l'année de sortie, réalisateur et la durée.

La relation ACTEURS donne pour chaque film l'ensemble des principaux acteurs.

À l'aide de l'algèbre relationnelle, exprimer les requêtes suivantes :

Question

Lister les films français (titre, année, réalisateur).

Solution

1
R1 = Restriction(FILMS, FILMS.pays='France')
2
R = Projection(R1, R1.titre, R1.année, R1.réalisateur)

Question

Donnez les années de sortie des films dans lesquels l'acteur Jean GABIN a joué.

Solution

1
R1 = Restriction (ACTEURS, ACTEURS.acteur='Gabin')
2
R2 = Jointure (R1, FILMS, R1.titre=FILMS.titre)
3
R = Projection(R2, R2.année)

Question

Trouver les acteurs qui ont tourné avec François Truffaut comme réalisateur.

Solution

1
R1 = Restriction (FILMS, FILMS.réalisateur='Truffaut')
2
R2 = Jointure (R1, ACTEURS, R1.titre=ACTEURS.titre)
3
R = Projection (R2, R2.acteur)

Question

Trouver tous les acteurs qui ont été partenaires de l'actrice Catherine Deneuve.

Solution

1
R1 = Restriction (ACTEURS, ACTEURS.acteur<>'Deneuve')
2
R2 = Restriction (ACTEURS, ACTEURS.acteur='Deneuve')
3
4
RES1 = Jointure (R1, R2, R1.titre=R2.titre)
5
R = Projection (RES1, RES1.acteur)

Question

Lister les films dans lesquels le réalisateur est aussi acteur.

Solution

1
R1 = Jointure (FILMS, ACTEURS, FILMS.titre=ACTEURS.titre)
2
R2 = Restriction (R1, R1.acteur=R1.realisateur)
3
R = Projection (R2, R2.titre) 

Question

Lister les réalisateurs n'ayant joué comme acteurs que dans des films qu'ils ne réalisaient pas eux-mêmes.

Solution

1
R1 = Projection (ACTEURS, ACTEURS.acteur)
2
R2 = Projection (FILMS, FILMS.réalisateur)
3
4
RES1 = Intersection (R1, R2)

RES1 donne les réalisateurs qui sont aussi des acteurs.

1
R3 = Jointure (FILMS, ACTEURS, FILMS.titre=ACTEURS.titre AND FILMS.realisateur=ACTEURS.acteur)
2
RES2 = Projection (R3, R3.acteur)

RES2 donne les acteurs qui ont joué dans des films qu'ils ont réalisés.

1
R = Difference (RES1, RES2)

Question

Lister les réalisateurs ayant joué comme acteurs dans des films qu'ils ne réalisaient pas eux-mêmes.

Solution

1
R1 = Jointure (FILMS, ACTEURS, FILMS.titre=ACTEURS.titre)
2
R2 = Restriction (R1, R1.acteur<>R1.realisateur)
3
4
RES1 = Projection (R2, R2.acteur)

RES1 représente tous les acteurs qui jouent dans des films qu'ils n'ont pas réalisés.

1
RES2 = Projection (FILMS, FILMS.réalisateur)

RES2 représente tous les réalisateurs.

1
R = Intersection (RES1, RES2)

Question

Donnez les acteurs qui jouent dans tous les films de François TRUFFAUT.

Solution

1
R1 = Restriction (FILMS, FILMS.réalisateur='Truffaut')
2
R2 = Projection(R1, R1.titre)
3
R = Division (ACTEURS, R2)