Il s'agit d'apprendre à interroger une base de données existante avec le langage SQL. Le sujet se compose d'une liste de questions classées de la plus facile vers la plus difficile. Toutes ces questions peuvent se résoudre avec l'algèbre relationnelle. Il faut noter que la notion de tri n'existe pas en algèbre et donc que l'on ne prendra pas en compte ce critère pour la version algèbre. Les requêtes SQL devront utiliser des constructions de l'algèbre relationnelle éventuellement enrichie de tri. A ce niveau, elles ne doivent pas contenir d'autres clauses SQL (agrégats, GROUP BY, ...).Vous avez accès à un corrigé derrière les .
2.1 Donner la liste des films (id, titre et annee) triée par titre.
2.2 Donner la liste des films avec un score supérieur ou égal à 9 ?
2.3 Quels sont les acteurs principaux (rang=1) des films sortis en 2000 ? On veut l'id et le nom triés par nom.
2.4 Faire le produit cartésien des relations FILMS et DISTRIBUTIONS.
Faire attention : cette requête n'a pas de sens et a va prendre beaucoup de temps CPU.
C'est juste un exemple de ce qu'il ne faut pas faire en SQL !!!
2.5 Donner les id des films sortis avant 1930 ou bien dans lesquels joue l'acteur de id 12.
2.6 Donner le nom des vedettes (rang=1) du film ayant l'id 11, dans l'ordre alphabétique.
2.7 Donner les noms des réalisateurs de films sortis avant 1970 et ayant 'the' dans leur titre.
11 tuples (sous Oracle et postgreSQL, 25 (sous mySQL, non sensible à la casse de 'the')
2.8 Donner les id et titre des films n'ayant aucun acteur dans leur distribution.
2.9 Donner les films (id et titre) sortis en 2000 et ayant au moins deux acteurs dans leur distribution.
2.10 Donner le(s) film(s) (id, titre) avec le score le plus haut.