Présentation de WHERE
WHERE est une clause de requête conditionnelle d’Oracle, elle permet de filtrer les données et de ne retourner que les lignes correspondant aux critères de recherche.
Point important sur l’ordre de la syntaxe :WHERE s’écrit après FROM et avant ORDER BY.
Syntaxe complète
SELECT
column1,
column2,
...
FROM
tablename
WHERE
search_condition
ORDER BY
column1,
column2;
Opérateurs de comparaison
| Opérateur | Description |
|---|---|
= | Égal à |
!= , <> | Différent de |
> | Supérieur à |
< | Inférieur à |
>= | Supérieur ou égal à |
<= | Inférieur ou égal à |
IN | Correspond à une valeur de la liste |
NOT IN | Ne correspond à aucune valeur de la liste |
[NOT] BETWEEN n AND m | Vérifie l’appartenance à un intervalle |
[NOT] EXISTS | Vérifie si une sous‑requête renvoie des lignes |
IS [NOT] NULL | Vérifie les valeurs NULL |
Exemples de code
Requête d’égalité
SELECT
id,
name,
sex
FROM
student
WHERE
name = 'tom';Langage du code : JavaScript (javascript)
Résultat d’exécution Oracle :
SQL> select * from student where name = 'tom';
ID NAME SEX
---------- ---------- ----
1 tom HommeLangage du code : JavaScript (javascript)
Comparaison numérique, id supérieur à 20
SELECT
*
FROM
student
WHERE
id > 20;
OU logique (OR)
SQL> select * from student where id>1 or name = 'jim';
ID NAME SEX
---------- ---------- ----
2 jim Homme
3 lisa FemmeLangage du code : JavaScript (javascript)
Correspondance avec IN
SELECT
*
FROM
student
WHERE
id IN(1,4)
ORDER BY
name;
Résultat d’exécution :
SQL> select * from student where id in(1,3);
ID NAME SEX
---------- ---------- ----
1 tom Homme
3 lisa FemmeLangage du code : JavaScript (javascript)
Requête floue avec LIKE
SELECT
*
FROM
student
WHERE
name LIKE 'l%'
ORDER BY
name;Langage du code : JavaScript (javascript)
%est un caractère générique.'l%'correspond aux chaînes commençant par « l ».
Points importants :
- Les valeurs de type chaîne doivent impérativement être entourées de guillemets simples, par exemple
name = 'jim'. WHEREse place avantORDER BY, ne pas inverser leur ordre.- Pour tester les valeurs nulles, n’utilisez pas
= NULL, utilisezIS NULL.
Requête conditionnelle WHERE
Previous: Déduplication Distinct
Next: FETCH