mathématiques (ECT 2e année) · Chapitre 12 · Exercice
Créer une table et écrire une jointure
Informatique et travaux pratiques · Bases de données · niveau 3 (difficile)
Énoncé
Une entreprise gère deux tables : client (champs id, nom, ville) et commande (champs num, id_client, montant). Écrire 1. la création de la table commande, 2. la requête affichant pour chaque commande le nom du client et le montant, 3. la même restreinte aux clients lyonnais.
Corrigé
1. Les trois champs sont entiers, et num identifie la ligne :
CREATE TABLE commande (
num INTEGER PRIMARY KEY,
id_client INTEGER,
montant INTEGER
);
2. La jointure rapproche les tables, et 3. WHERE restreint le résultat :
SELECT client.nom, commande.montant FROM commande
INNER JOIN client ON commande.id_client = client.id;
SELECT client.nom, commande.montant FROM commande
INNER JOIN client ON commande.id_client = client.id
WHERE client.ville = 'Lyon';
Attention. ON dit comment relier les tables, WHERE quelles lignes garder.