Pour faire des conditions où des
critères afin
de filtrer les recherches on utilise la
clause Where avec d’autres
clauses comme les opérateurs
de conditions (>, <,=, <>,=<,=>,=!)Où des jointures, des clauses IN et NOT IN, NULL et IS NOT
NULL, BETWEEN et NOT BETWEEN, clause LIKE
Pour exprimer les
conditions dans la clause where, on dispose
de certains opérateurs :

Ø Opérateurs de Conditions (>, <,=, <>,=<, =>,=!) pour
les
comparaisons
des champs numériques
:
Syntaxe : Select Champ1, champs2
….
From listes_des_tables
Where ChampX <
valeur_numérique
Exemple : Afficher les salaires qui coutent
moins
que 10000 DH Select salaire
From
ouvrier
Where salaire
< 10000
Ø BETWEEN : Donne les valeurs
qui existent entre deux valeurs numériques
Syntaxe : Select Champ1, champs2
….
From listes_des_tables
Where ChampX Between valeur_numérique1 And
valeur_numérique2
Exemple : Afficher les salaires qui
coutent entre 10000 et 20000
Select salaire
From Ouvrier
Where salaire Between 10000 And 20000

Ø IS NULL et IS NOT NULL : testent si un attribut possède où non une valeur
Syntaxe1 : Select Champ1, champs2 ….
From listes_des_tables
Where ChampX Is Null
Syntaxe2 : Select Champ1, champs2 ….
From listes_des_tables
Where ChampX Is not
Null
Exemple1: Afficher les noms
des ouvriers qui n’ont pas de remise
Select nom
From Ouvrier
Where remise Is Null
Exemple2: Afficher les noms
des ouvriers qui ont de remise
Select nom
From Ouvrier
Where remise Is Not
Null
Ø LIKE : suivi d’une expression représentant un ensemble
de valeurs. Dans ces expressions % désigne un ensemble de caractères, _ remplace une lettre, utilisée pour chercher des résultats qui
ont une forme d’écriture précise.
Syntaxe1 : Select Champ1, champs2 ….
From listes_des_tables
Where ChampX LIKE ‘%partie_de_chaine%’
Syntaxe2 : Select Champ1, champs2
….
From listes_des_tables
Where ChampX LIKE ‘_partie_de_chaine%’
Syntaxe3 : Select Champ1, champs2 ….
From listes_des_tables
Where ChampX LIKE ‘[0-1]partie_de_chaine [a-g]’
Syntaxe4 : Select Champ1, champs2
….
From listes_des_tables
Where ChampX LIKE ‘[0-5-1]partie_de_chaine [a-x-g]’
Syntaxe5 : Select Champ1, champs2 ….
From listes_des_tables
Where ChampX LIKE ‘[1, 2]partie_de_chaine [1,5]’
observation:
% : Remplace une chaine de caractères
_ : Remplace un seul
caractère
[X-Y] : Remplace un
seul caractère par
une
valeur qui est entre X et Y
Exemple : [2-5] remplace par tout nombre entre 2 et 5 ça
veut dire (2, 3, 4,5) [a-g] remplace par tout lettre entre a et g ça veut
dire
(a, b, c….g)
[X, Y] : Remplace un seul caractère par l’un des deux valeurs séparés par le virgule Soit X où Y, il est différente de [X-Y], celle-ci contient un virgule à la place du tiret, et ils n’ont pas le même
rôle celle avec un tiret [X-Y] remplace un caractère qui appartient à l’intervalle entre X et Y, et
celle avec un
virgule [X, Y] remplace par
l’un des deux caractères
seulement X où Y.
Exemple : [2, 5] remplace
soit par 2 où 5.
[X-Y-B] : Remplace l’une des valeurs de la
liste soit X, Y où B
Exemple : [3-9-2] Remplace
par l’une des valeurs dans la liste
3, 9 où 2
Les crochets ‘….’ sont
obligatoires après
la clause like
Exemple1:
Afficher les noms des
clients qui contient la chaine de caractére suivante ‘itlamsal’
Select nom
From Client
Where nom like ‘% itlamsal %’
Exemple2
Afficher tous les
noms des clients qui commencent par
‘a’
Select nom
From Client
Where nom like ‘a %’
Exemple3
Afficher tous les
noms des clients dont le deuxième
lettre est ‘d’
Select nom
From Client
Where nom like ‘_d % ’
Exemple4
Afficher tous les
noms des clients dont l’avant dernier lettre
et ‘f’
Select nom
From Client
Where nom like ‘% f _’
Exemple5 Afficher tous les noms des clients dont l’avant dernier lettre et ‘f’ et la deuxième lettre
et g
Select nom
From Client
Where nom like ‘_ g % f _’
Exemple6 Afficher tous les noms des clients dont l’avant dernier lettre et ‘f’ et la deuxième lettre
et g
Select nom
From Client
Where nom like ‘_ g % f _’
Exemple7 Afficher tous les noms des clients dont le deuxième lettre soit c, d, g où f et le dernier
lettre entre
l’intervalle d et m
Select nom
From Client
Where nom like ‘_ [c-d-g-f] % [d-m] ’
Exemple8 Afficher tous les noms des clients dont le deuxième lettre soit c où d et l’avant dernier
lettre entre l’intervalle c et g
Select nom
From Client
Where nom like ‘_
[c,
d] % [d-m] _ ’
Aucun commentaire:
Enregistrer un commentaire