Catégories :

Fonctions de chaîne et fonctions binaires (Correspondance/Comparaison)

ILIKE

Permet l’appariement des chaînes sur la base d’une comparaison avec un motif. Contrairement à la fonction LIKE, la correspondance des chaînes ne respecte pas la casse.

LIKE, ILIKE et RLIKE effectuent tous des opérations similaires ; Cependant, RLIKE utilise la syntaxe POSIX EXE (expression régulière étendue) au lieu de la syntaxe de modèle SQL utilisée par LIKE et ILIKE.

Astuce

Vous pouvez utiliser le service d’optimisation de recherche pour améliorer les performances des requêtes qui appellent cette fonction. Pour plus de détails, voir Service d’optimisation de la recherche.

Voir aussi

LIKE , RLIKE

Syntaxe

<subject> ILIKE <pattern> [ ESCAPE <escape> ]

ILIKE( <subject> , <pattern> [ , <escape> ] )
Copy

Arguments

Obligatoire :

subject

Sujet devant correspondre.

pattern

Modèle devant correspondre.

Facultatif :

escape

Caractère(s) inséré(s) devant un caractère générique pour indiquer que le caractère générique doit être interprété comme un caractère standard et non comme un caractère générique.

Notes sur l’utilisation

  • Les caractères génériques SQL sont pris en charge dans le pattern :

    • Un trait de soulignement (_) correspond à n’importe quel caractère.

    • Un signe de pourcentage (%) correspond à toute séquence de zéro caractère ou plus.

  • Les caractères génériques du pattern incluent les caractères de nouvelle ligne (\n) dans subject comme des correspondances.

  • La correspondance de modèle ILIKE couvre la chaîne entière. Pour faire correspondre une séquence n’importe où dans une chaîne, commencez et terminez le motif par %.

  • Il n’y a pas de caractère d’échappement par défaut.

  • Si vous utilisez la barre oblique inversée en tant que caractère d’échappement, vous devez alors spécifier l’échappement de la barre oblique inversée dans la clause ESCAPE. Par exemple, la commande suivante spécifie que le caractère d’échappement est la barre oblique inversée, puis utilise ce caractère d’échappement pour rechercher « % » comme un littéral (sans le caractère d’échappement, le « % » serait traité comme un caractère générique) :

    'SOMETHING%' ILIKE '%\\%%' ESCAPE '\\';
    
    Copy

    Pour obtenir des exemples d’utilisation des caractères d’échappement, et en particulier de la barre oblique inversée en tant que caractère d’échappement, voir les exemples de la fonction LIKE.

Détails du classement

Arguments with collation specifications are currently not supported.

Exemples

CREATE OR REPLACE TABLE ilike_ex(subject varchar(20));
INSERT INTO ilike_ex VALUES
      ('John  Dddoe'),
      ('Joe   Doe'),
      ('John_down'),
      ('Joe down'),
      (null);
Copy
SELECT * 
    FROM ilike_ex 
    WHERE subject ILIKE '%j%h%do%'
    ORDER BY 1;
+-------------+
| SUBJECT     |
|-------------|
| John  Dddoe |
| John_down   |
+-------------+
Copy
SELECT * 
    FROM ilike_ex 
    WHERE subject ILIKE '%j%h%^_do%' ESCAPE '^'
    ORDER BY 1;
+-----------+
| SUBJECT   |
|-----------|
| John_down |
+-----------+
Copy