Requête conditionnelle WHERE

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érateurDescription
=Égal à
!= , <>Différent de
>Supérieur à
<Inférieur à
>=Supérieur ou égal à
<=Inférieur ou égal à
INCorrespond à une valeur de la liste
NOT INNe correspond à aucune valeur de la liste
[NOT] BETWEEN n AND mVérifie l’appartenance à un intervalle
[NOT] EXISTSVérifie si une sous‑requête renvoie des lignes
IS [NOT] NULLVé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 :

  1. Les valeurs de type chaîne doivent impérativement être entourées de guillemets simples, par exemple name = 'jim'.
  2. WHERE se place avant ORDER BY, ne pas inverser leur ordre.
  3. Pour tester les valeurs nulles, n’utilisez pas = NULL, utilisez IS NULL.

Requête conditionnelle WHERE

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *