66
Chapitre 5 • Le langage SQL DML
2. l’extraction de données d’une seule table, mais en corrélation avec les données
d’une autre table - les sous-requêtes (section 5.3)
3. l’extraction de données de plusieurs tables - les jointures (section 5.4)
4. l’extraction de données groupées (section 5.5)
5. la modification des données (section 5.8)
5.2 CONSULTATION ET EXTRACTION DE DONNÉES DANS
UNE TABLE
Les nombreuses variantes de l’instruction select d’SQL permettent d’extraire des
données d’un ensemble de tables et de les présenter, toujours sous la forme d’une
table, soit à l’utilisateur au terminal, soit au programme d’application qui en a
demandé l’exécution. La présentation qui en sera faite suppose une utilisation
interactive : l’utilisateur introduit la requête au terminal, en demande l’exécution au
SGBD qui affiche les données extraites à l’écran.
Sauf mention contraire, tous les exemples de requêtes et leurs résultats sont relatifs à la base de données illustrée à la figure 3.6.
5.2.1 Principes
L’exécution d’une requête select produit un résultat qui est une table. Ce fait est
important, car il implique naturellement qu’on devrait pouvoir écrire une requête
select partout où on utilise le nom d’une table. Ceci n’est vrai, avec quelques
restrictions, qu’en SQL:1999 mais on trouve déjà dans SQL2, quelques possibilités
dans ce sens.
D’une manière générale, une requête simple contient trois parties principales :
• la clause select précise les valeurs (nom des colonnes, valeurs dérivées) qui
constituent chaque ligne du résultat,
• la clause from indique les tables desquelles le résultat tire ses valeurs,
• la clause where donne la condition de sélection que doivent satisfaire les
lignes qui fournissent le résultat.
Le résultat d’une requête select, ou plus généralement SFW (select-from-where)
est une table fictive qui, dans cet exposé, sera considérée comme s’affichant à
l’écran. Dans d’autres circonstances que nous rencontrerons plus loin (5.8.1), ce
résultat pourra être matérialisé sous la forme d’une table permanente.
Les expressions SFW seront introduites progressivement, par ordre de complexité
croissante.
5.2.2 Extraction simple
La requête la plus simple consiste à demander d’afficher les valeurs de certaines
colonnes de lignes d’une table. La requête suivante demande les valeurs de NCLI,
NOM et LOCALITE des lignes de la table CLIENT.
Précédent

- 66/436

Suivant