
Exemples pratiques SQL
Exemple 1 : Requête simple avec condition
Quels sont les noms des pilotes habitant Paris ?
SELECT PLNOM FROM PILOTE WHERE ADR = 'PARIS';
Exemple 2 : La Jointure (Récupérer des données dans deux tables)
Acher les noms des pilotes et les numéros des vols qu'ils assurent.
SELECT a.PLNOM, b.VOL# FROM PILOTE a, VOL b WHERE a.PL# = b.PL#;
Exemple 3 : Regroupement et Fonctions (GROUP BY / HAVING)
Les fonctions (SUM, AVG, COUNT, MIN, MAX) permettent de faire des calculs.
Quels sont les numéros de pilotes qui assurent STRICTEMENT plus de 3 vols ?
SELECT PL#, COUNT(*) FROM VOL GROUP BY PL# HAVING COUNT(*) > 3;
Note : WHERE ltre les lignes AVANT le groupement, HAVING ltre les groupes APRÈS.
Exemple 4 : Mises à jour (L'Écriture)
Ajouter : INSERT INTO PILOTE (PL#, PLNOM) VALUES (150, 'JEAN');
Modier : UPDATE PILOTE SET ADR = 'NICE' WHERE PL# = 150;
Supprimer : DELETE FROM PILOTE WHERE PL# = 150;
PARTIE 3 : Exercices Complexes d'Évaluation
Prenez le temps de résoudre ces exercices pour valider vos compétences. Le schéma de base
est :
PILOTE(PL#, PLNOM, ADR)
AVION(AV#, AVNOM, CAP, LOC)
VOL(VOL#, PL#, AV#, VD, VA, HD, HA)
Exercice 1 : Algèbre Relationnelle
Écrivez la séquence d'opérateurs relationnels (Projection, Sélection, Jointure, Division) pour
répondre aux questions suivantes :
1.1. Donnez les noms des pilotes qui conduisent un avion dont la capacité est supérieure à 300
places.
1.2. Donnez les numéros des avions (AV#) qui sont utilisés sur TOUS les vols au départ de
'PARIS' (VD = 'PARIS').
Exercice 2 : Requêtes SQL Avancées
Rédigez les requêtes SQL correspondantes :
2.1. Achez la moyenne des capacités des avions par localisation (LOC).
2.2. Achez le nom des pilotes qui gagnent un salaire supérieur à la moyenne des salaires
(Astuce : Utilisez une requête imbriquée avec SELECT AVG(...)).
•
•
•