Les jointures☘
Une jointure permet de combiner plusieurs tables d’une même base.
Cette jointure va associer les lignes qui correspondent pour un
(ou plusieurs) attributs communs (généralement les associations clef
primaire/clef étrangère) :
1 2 3 |
|
Pour lever les ambiguïtés, le nom de la table peut (doit) précéder le nom
de l’attribut de jointure. On peut simplifier l’écriture de cette requête en
donnant un alias au nom de la table grâce au mot-clef AS
.
Exemple☘
On considère les tables Confitures et Ventes :
Écrire une requête qui renvoie le nom des confitures vendues.
Une réponse
1 2 3 |
|
Résultat de la requête
Remarque☘
Il est possible d’enchaîner les jointures :
1 2 3 |
|
Réutiliser le résultat d’une requête☘
Il existe plusieurs méthodes pour réutiliser le résultat d’une requête.
Parmi elles, on peut citer :
-
La création d’une nouvelle table dans la base (risque d’accumulation de tables dans la base de données) :
1 2 3 4
CREATE TABLE new_table AS SELECT ………… FROM ………… WHERE ………… ;
-
Si la réutilisation est immédiate et qu’il n’y a pas besoin de garder en mémoire le résultat intermédiaire, alors on peut utiliser la commande
WITH
:1 2 3 4 5 6 7
WITH temp AS ( SELECT ………… FROM ………… WHERE …………) SELECT ………… FROM temp;