Serie 2 TP SQL
Serie 2 TP SQL
Serie 2 TP SQL
S1 GI1-Cycle Ingénieur
Série 2 de TP SQL
Exercice 1 :
Soit le schéma relationnel et le code SQL suivants :
REPRESENTANTS (#NR, NOMR, VILLE)
PRODUITS (#NP, NOMP, COUL, PDS)
CLIENTS (#NC, NOMC, VILLE)
VENTES (#NR=>REPRESENTANTS(NR), #NP=>PRODUITS(NP), #NC=>CLIENTS(NC), QT)
1. Écrire en SQL les requêtes permettant de créer toutes les tables de schéma avec les relations (les
clés primaire et les clés étrangères) ?
2. Écrire en SQL les requêtes permettant de remplir les tables avec les informations suivantes :
La table REPRESENTANTS :
(1, 'Stephane', 'Lyon');
(2, 'Benjamin', 'Paris');
(3, 'Leonard', 'Lyon');
(4, 'Antoine', 'Brest');
(5, 'Bruno', 'Bayonne');
La table PRODUITS :
(1, 'Aspirateur', 'Rouge', 3546);
(2, 'Trottinette', 'Bleu', 1423);
(3, 'Chaise', 'Blanc', 3827);
(4, 'Tapis', 'Rouge', 1423);
La table CLIENTS :
(1, 'Alice', 'Lyon');
(2, 'Bruno', 'Lyon');
(3, 'Charles', 'Compiègne');
(4, 'Denis', 'Montpellier');
(5, 'Emile', 'Strasbourg');
La table VENTE :
(1, 1, 1, 1);
(1, 1, 2, 1);
(2, 2, 3, 1);
(4, 3, 3, 200);
(3, 4, 2, 190);
(1, 3, 2, 300);
(3, 1, 2, 120);
(3, 1, 4, 120);
(3, 4, 4, 2);
(3, 1, 1, 3);
(3, 4, 1, 5);
(3, 1, 3, 1);
3. Écrire en SQL les requêtes permettant d'obtenir les informations ci-après.
Requête 1 : Tous les détails de tous les clients.
Requête 2 : Les numéros et les noms des produits de couleur rouge et de poids supérieur à 2000.
Requête 3 : Les représentants ayant vendu au moins un produit.
Requête 4 : Les noms des clients de Lyon ayant acheté un produit pour une quantité supérieure à 180.
Requête 5 : Les noms des représentants et des clients à qui ces représentants ont vendu un produit de
couleur rouge pour une quantité supérieure à 100.
Exercice 2 :
Pour le schéma de relation suivant :
Employé (nom de l'employé, rue, ville)
Travaux (nom de l'employé, nom de l'entreprise, salaire)
Entreprise (nom de l'entreprise, ville)
Gère (nom-employé, nom-responsable)
1. Écrire en SQL les requêtes permettant de créer toutes les tables de schéma avec les relations (les
clés primaires et les clés étrangères) ?
a) Trouvez les noms, l'adresse postale et les villes de résidence de tous les employés qui
travaillent pour «First Bank Corporation» et gagner plus de 10 000 $ (par exemple).
b) Trouvez les noms de tous les employés de la base de données qui vivent dans les mêmes
villes que l’entreprise pour lesquelles ils travaillent.
c) Trouvez les noms de tous les employés de la base de données qui vivent dans les mêmes
villes et sur les mêmes rues que leurs gérants.
d) Trouvez les noms de tous les employés de la base de données qui ne travaillent pas dans 'First
Bank Société'. Supposons que toutes les personnes travaillent pour exactement une entreprise.
e) Trouvez les noms de tous les employés de la base de données qui gagnent plus que chaque
employé de «Small Bank Corporation». Supposons que toutes les personnes travaillent pour
au plus une entreprise.
f) Supposons que les entreprises peuvent être situées dans plusieurs villes. Trouvez toutes les
entreprises situé dans chaque ville où se trouve «Small Bank Corporation».
g) Trouvez les noms de tous les employés qui gagnent plus que le salaire moyen de tous
employés de leur entreprise. Supposons que toutes les personnes travaillent pour au plus une
entreprise.