SQL : interroger la base
SELECT, WHERE, ORDER BY, DISTINCT : les quatre outils de base pour poser des questions à une base de données — et une enquête à résoudre pour se mettre en jambes.
Objectifs de la séance
- Écrire des requêtes SELECT pour afficher des colonnes précises.
- Filtrer des résultats avec WHERE (comparaisons, AND/OR/NOT, BETWEEN, IN, LIKE).
- Trier des résultats avec ORDER BY.
- Éliminer les doublons avec DISTINCT.
Résoudre une enquête... en SQL
Avant même de voir la syntaxe formelle, on mène une enquête policière à coups de requêtes SELECT / WHERE. Chaque indice trouvé mène au suivant, jusqu'au nom du coupable.
Ressource : mystery.knightlab.com
Réinitialiser sa base
Pour que tout le monde travaille sur les mêmes données, exécute ce script dans billetterie.db (il efface les tables existantes) puis ré-exécute les CREATE TABLE et INSERT des séances précédentes.
État de référence retrouvé après réinsertion :
| Table | Contenu de référence |
|---|---|
| ARTISTE | (1,DJ Solstice,Électro) (2,Les Foudres,Rock) (3,Miles & Co,Jazz) |
| SALLE | (1,Zénith,Lyon) (2,Stade des Lumières,Lyon) (3,Le Trianon,Paris) |
| SPECTATEUR | (1,Léa Martin,...) (2,Noah Petit,...) (3,Inès Dubois,...) |
| CONCERT | (1,Nuit Électro,09-12,1,1) (2,Rock en Seine,09-20,2,2) (3,Jazz...,09-25,3,3) |
| BILLET | (1,1,1,45) (2,2,1,45) (3,1,2,38) (4,3,1,45) (5,2,3,30) (6,3,2,38) |
La requête SELECT
Filtrer avec WHERE
Comparaisons classiques.
Combiner plusieurs conditions.
Un intervalle de valeurs.
Appartenance à une liste.
Recherche approchée : % = suite de caractères, _ = un seul caractère.
a. Billets à plus de 40€
b. Concerts après le 15/09/2026
c. Emails contenant « mail.fr »
d. Défi — billets dont le prix n'est pas 45
Trier avec ORDER BY
a. Billets du plus cher au moins cher
b. Spectateurs par ordre alphabétique
c. Défi — concerts triés par date
Éliminer les doublons : DISTINCT
a. Prix distincts pratiqués
b. Villes distinctes
Exercices gradués
Affiche le nom et l'email de tous les spectateurs, triés par ordre alphabétique.
Voir la correction
Affiche tous les billets dont le prix est compris entre 35 et 45€, triés du moins cher au plus cher.
Voir la correction
Affiche les noms des artistes dont le genre commence par « R » ou dont le nom contient un espace.