1. Chapitre 5 :
Le langage SQL
Introduction : présentation du SQL
I. La projection
II. La restriction
III. Le tri
IV. La jointure
2. Introduction : présentation du SQL
15
SQL
Structured Query Language
Le langage structuré de requêtes permet :
De manipuler les bases de données quel que soit le
logiciel utilisé
De réaliser des requêtes
Les instructions SQL
SELECT
FROM
WHERE
ORDER BY
3. Construction d'une requête SQL
Le raisonnement est le suivant :
Quoi ? quelles informations obtenir ?
Où ? dans quelles tables ?
Comment ? (jointures, restrictions…)
4. I. La projection
Thème - Requête n° 1 :
Afficher la liste des adhérents (Nom, Prénom, Code
postal, Ville)
Quoi ? Nom_adh, Prénom_adh, Cp_adh, Ville_adhSELECT
Où ? ADHERENTFROM
5. SELECT
FROM
I. La projection
Critère de projection. C’est un ordre qui décrit les
champs que l’on désire extraire et afficher.
C’est une clause qui précise les tables
nécessaires à la requête.
La présence de FROM est obligatoire et suit
SELECT.
6. II. La restriction
Thème - Requête n° 2 :
Afficher la liste des adhérents (numéro,
nom, prénom, index) dont l’index est
inférieur à 20
Quoi ? Num_adh, Nom_adh, Prénom_adh, Index_adhSELECT
Où ? ADHERENTFROM
Comment ? Index_adh < 20WHERE
7. II. La restriction
WHERE C’est une clause qui décrit les critères de
restriction.
S’il n’y a pas de restriction, la ligne WHERE
n’existe pas.
8. III. Le tri
Thème - Requête n° 3 :
Afficher la liste des adhérents (nom,
prénom, code postal, ville) dans
l’ordre alphabétique du nom.
Quoi ? Nom_adh, Prénom_adh, Cp_adh, Ville_adhSELECT
Où ? ADHERENTFROM
ORDER BY Nom_adh
Tri sur le nom
9. III. Le tri
ORDER BY C’est une clause qui décrit les critères de TRI.
L’ordre croissant est traduit par ASC.
L’ordre décroissant est traduit par DESC.
En l’absence de paramètre, c’est ASC qui est
retenu par défaut.
10. IV. La jointure
Thème - Requête n° 4 :
Afficher la liste des adhérents
seniors (nom, prénom, intitulé
de la formule) dans l’ordre
croissant du nom et du prénom.
Quoi ?
Où ?
Comment ?
Nom_adh, Prénom_adh, intitulé_for
ADHERENT, FORMULE
SELECT
FROM
WHERE
Code_cat=6 AND
ADHERENT.Code_for=FORMULE.Code_for
ORDER BY Nom_adh, Prénom_adh
11. IV. La jointure
WHERE C’est une clause qui décrit aussi le critère de
jointure.
Lorsqu’il y a jointure entre deux tables, les
tables sont mentionnées en ligne FROM et le
critère de jointure fait partie des éléments de la
ligne WHERE, lié par AND aux autres critères
de restriction.
Le préfixage est nécessaire pour préciser de
quelle table sont issus les champs concernés
par la jointure.