Vous êtes sur la page 1sur 4

ORD 20855 Architecture de bases de donnes

Laboratoire #10

Nom :

Matricule dtudiant(e) :

Laboratoire #10 SELECT impliquant plusieurs tables


Dure prvue : 90 minutes

Objectifs : Poursuivre notre familiarisation avec la commande SQL SELECT.

Commande SELECT impliquant plus d'une table simultanment.

Outils / Prparation : Ressources requises : 1. PC avec une distribution Linux rcente (Fedora Core) disposant du serveur mysqld et son client mysql; 2. Accs WebCT via Internet; 3. La base de donnes Monde. 4. Un manuel de rfrence du langage SQL.

Partie 1 Rappel - Syntaxe de la commande SELECT


Voici la syntaxe simplifie de cette commande : SELECT colonnes FROM table WHERE condition ORDER BY colonne;

o les attributs "WHERE condition" et "ORDER BY colonne" sont optionnels, et colonnes est le nom d'une ou plusieurs colonnes (spares par une virgule) afficher; est le nom de la table interroger; est une condition exploitant les oprateurs relationnelles (<, <=, >, >=, = et !=) et les oprateurs logiques (AND, OR et NOT) pour exprimer une condition laquelle doit rpondre une range de la table pour tre slectionne; est le nom de la colonne selon laquelle l'affichage doit tre tri en ordre croissant.

table condition

colonne

Page 1

ORD 20855 Architecture de bases de donnes

Laboratoire #10

Partie 2 Interrogations de la base de donnes Monde


Les tapes suivantes vous demandent d'exploiter de la commande SELECT afin de rpondre aux questions demandes. Pour chaque question vous devez donner la commande SQL requise pour y rpondre en plus des rponses demandes. Notez qu'une (1) seule commande SELECT doit tre formule pour rpondre chaque question.

1. Quel est le nom de la capitale de l'Indonsie ? Voici, tape par tape, la construction de cette commande SELECT.
Syntaxe de la commande Mysql SELECT colonnes Explications Commande mysql

Colonnes afficher

SELECT Ville.Nom Remarquez le nom de la table suivi du nom de la colonne, les deux runis par un point. De cette manire, MySQL ne peut pas confondre la colonne nom de la table ville et le champ nom de la table Pays. La table Ville contient des noms de villes multiples du monde, tous ces noms ne sont pas toutes des capitales! Quelle est la manire utilise dans cette base pour identifier les villes qui sont des capitales de pays?

FROM tables

Tables lire pour rechercher les donnes

FROM Ville, Pays Remarquez que les noms de deux (2) tables sont nomms, MySQL saura de cette faon quil doit utiliser ces deux tables pour y effectuer des recherches.

WHERE condition

Condition(s) de la recherche

WHERE Ville.Nom = " Indonesie " AND Ville.ID = Pays.Capitale; Ici encore une fois, lexpression Ville.Nom forcera MySQL pointer la colonne nom de la table Ville pour rechercher la ville de "Vientiane". Comment MySQL naviguera-t-il dans la base de donnes pour trouver cette rponse? Suivez avec attention les explications du professeur au tableau !

Page 2

ORD 20855 Architecture de bases de donnes

Laboratoire #10

ORDER BY colonne;

Tri des rsultats obtenus suite WHERE condition Ceci est optionnel !

Donc la commande MySQL se lira comme suit :


SELECT Ville.Nom FROM Ville, Pays.Capitale = Ville.ID ;
Rponse : Jakarta

Pays

WHERE

Pays.Nom

"Indonesie"

AND

2. Quel est le nom de la capitale de la France ?


Commande SQL

Rponse

3. Vientiane est la capitale de quel pays ? Commande SQL :

Nom du pays ? 4. Quel pourcentage de la population du Soudan habite dans sa capitale ? Commande SQL :

Pourcentage ? 5. Quel est le nom des pays o le franais est parl ? Commande SQL :

Page 3

ORD 20855 Architecture de bases de donnes

Laboratoire #10

Combien y a-t-il de ces pays ? 6. Quel est le nom des pays o le franais est une langue officielle ? Commande SQL :

Combien y a-t-il de ces pays ? 7. BONUS - Quel est le nom de la capitale des pays o au moins 30% de la population parle l'allemand ? Commande SQL :

Le nom de ces capitales ?

Si vous avez russi rpondre adquatement aux questions de ce laboratoire, vous matrisez les manipulations de base avec tables multiples avec la commande SELECT.
Fin du document

Page 4