254
Introduction pratique aux bases de données relationnelles
les mêmes éléments constitutifs de la requête en question. Par
conséquent, pour créer des requêtes simples, choisissez entre SQL et
QBE le langage avec lequel vous vous sentez à l'aise. En revanche,
vous devez recourir à SQL pour définir des requêtes complexes (par
exemple, des commandes SQL emboîtées, voir l'étape 10).
Étape 10 : créer des requêtes complexes (avec jointures ou
instructions SQL imbriquées)
Vous avez souvent besoin d'extraire des données provenant de
plusieurs tables simultanément. Par exemple, vous désirez avoir une
vue d'ensemble de toutes les maisons de vacances avec les noms des
îles où elles se trouvent :
Requête
nécessitant des
données extraites
de deux tables
Le résultat ci-dessus est issu de deux tables, MAISON et ÎLE, liées
par l'attribut IdÎle :
SELECT
NomMaison, NomIle, NombreChambres,
MaxPersonnes, VueSurMer, Loyer
FROM
Maison, Ile
WHERE
Maison.IdIle = Ile.IdIle
ORDER BY
NomMaison
Créez cette requête et sauvegardez-la sous le nom
Maison_sur_Ile.
Comment réalisez-vous la jointure de plus de deux tables ? Par
exemple, vous désirez établir une liste de toutes les réservations,
contenant les noms des clients et des maisons réservées :
Introduction pratique aux bases de données relationnelles
les mêmes éléments constitutifs de la requête en question. Par
conséquent, pour créer des requêtes simples, choisissez entre SQL et
QBE le langage avec lequel vous vous sentez à l'aise. En revanche,
vous devez recourir à SQL pour définir des requêtes complexes (par
exemple, des commandes SQL emboîtées, voir l'étape 10).
Étape 10 : créer des requêtes complexes (avec jointures ou
instructions SQL imbriquées)
Vous avez souvent besoin d'extraire des données provenant de
plusieurs tables simultanément. Par exemple, vous désirez avoir une
vue d'ensemble de toutes les maisons de vacances avec les noms des
îles où elles se trouvent :
Requête
nécessitant des
données extraites
de deux tables
Le résultat ci-dessus est issu de deux tables, MAISON et ÎLE, liées
par l'attribut IdÎle :
SELECT
NomMaison, NomIle, NombreChambres,
MaxPersonnes, VueSurMer, Loyer
FROM
Maison, Ile
WHERE
Maison.IdIle = Ile.IdIle
ORDER BY
NomMaison
Créez cette requête et sauvegardez-la sous le nom
Maison_sur_Ile.
Comment réalisez-vous la jointure de plus de deux tables ? Par
exemple, vous désirez établir une liste de toutes les réservations,
contenant les noms des clients et des maisons réservées :
