5.2 Consultation et extraction de données dans une table
69
© Dunod – La photocopie non autorisée est un délit.
from
CLIENT
where CAT = 'C1'
Nous obtenons le résultat suivant :
La réponse contient autant de lignes que la table originale CLIENT en contient qui
satisfont la sélection. On pourra éliminer les lignes en double par la clause
distinct comme suit 3 :
select distinct LOCALITE
from
CLIENT
where CAT = 'C1'
Nous obtenons le résultat suivant, qui ne contient plus que des lignes distinctes :
Ainsi qu’on l’a indiqué dans le chapitre 3, nous travaillerons sur des tables initiales
dotées chacune d’un identifiant primaire, c’est-à-dire dont les lignes sont distinctes.
On vient de voir cependant que le résultat d’une requête peut contenir des lignes
dupliquées. Il faut être très prudent lorsqu’on exploite de tels résultats. Par exemple,
la requête suivante donne les numéros des clients qui ont passé au moins une
commande.
select NCLI
from
COMMANDE
Cependant, le nombre d’éléments du résultat n’est pas égal à celui des clients qui ont
passé une commande, mais bien au nombre de commandes. On écrira plutôt :
select distinct NCLI
from
COMMANDE
LOCALITE
Poitiers
Namur
Poitiers
Namur
Namur
3. En fait, l’expression "select LOCALITE ..." est une forme abrégée de "select all
LOCALITE ...".
LOCALITE
Namur
Poitiers
Précédent

- 69/436

Suivant