Adloun

informatique (tronc commun des prépas scientifiques) · Chapitre 15 · Exercice de TD

Du produit cartésien à la jointure

Les bases de données : le modèle relationnel et les premières requêtes · niveau 3 (difficile)

Énoncé

Expliquer la différence entre un produit cartésien et une jointure de tables.

Corrigé

  • Le produit cartésien s'obtient en listant simplement deux tables dans la clause FROM (ex: FROM livre, auteur). Il produit toutes les combinaisons possibles de lignes. Pour 8 livres et 4 auteurs, on obtient lignes (dont la grande majorité associe des livres à des auteurs erronés).
  • La jointure filtre ce produit en imposant l'égalité entre la clé étrangère du livre et la clé primaire de l'auteur : `sql SELECT titre, nom FROM livre, auteur WHERE livre.id_auteur = auteur.id_auteur; ` Cette requête ne renvoie que 8 lignes (une par livre) avec l'auteur correspondant exact.

Exercices semblables

Le cours du chapitre · Tous les exercices du chapitre