Overblog Suivre ce blog
Editer l'article Administration Créer mon blog
2 juillet 2012 1 02 /07 /juillet /2012 22:17

 

SQL LIKE.

Comment utiliser l'opérateur SQL LIKE d'Oracle.
Comment rechercher une partie d'une chaîne de caractères dans une colonne avec LIKE.
Comment comparer partiellement des chaines de caractères avec LIKE.

Utiliser l'opérateur LIKE dans une condition.

L'opérateur LIKE (expression) compare partiellement des chaînes de caractères.
Le symbole ou joker % peut remplacer un caractère ou un nombre quelconque de caractères.
Le symbole ou joker _ (underscore) peut remplacer un caractère unique.

Syntaxe SQL LIKE.

 
 char1 [ NOT ] ( LIKE ) expr [ ESCAPE esc_char ] 

char1 est la colonne de caractères, c'est la valeur de recherche appelé.
expr est généralement un littéral, la valeur recherchée.
esc_char est un littéral, appelé caractère d'échappement (ESCAPE CHARACTER).

 

 

Exemple Oracle sql LIKE.

 
 SQL> SQL> SELECT * FROM table_like; COL_1 -------------------- DATA_BASE_ADMIN DATA BASE ADMIN DATABASE ADMIN DATE SQL> SELECT * FROM table_like WHERE col_1 LIKE 'DAT_%'; COL_1 -------------------- DATA_BASE_ADMIN DATA BASE ADMIN DATABASE ADMIN DATE SQL> 

Ici LIKE recherche une expression commençant par DAT incluant ensuite n'importe quel caractère unique (blanc inclus) suivi de n'importe quels autres caractères (%).


 

 
 SQL> SQL> SELECT * FROM table_like WHERE col_1 LIKE '%DATA_%'; COL_1 -------------------- DATA_BASE_ADMIN DATA BASE ADMIN DATABASE ADMIN SQL> 

Ici LIKE recherche une expression commençant par n'importe quel caractères (%) suivi de DATA incluant ensuite n'importe quel caractère unique (blanc inclus) suivi de n'importe quels autres caractères (%).


 

 
 SQL> SQL> SELECT * FROM table_like WHERE col_1 LIKE 'DATA\_%' ESCAPE '\'; COL_1 -------------------- DATA_BASE_ADMIN SQL> 

Ici LIKE recherche une expression commençant par DATA_ suivi de n'importe quel autre caractères (%).
Afin de ne pas être interpréter comme le joker underscore (_) on utilise la clause ESCAPE en définissant '\' comme caractère d'échappement ainsi le caractère qui suit ce caractère d’échappement '\' est interprété comme un caractère et non comme un joker underscore (_).


 

 
 SQL> SQL> SELECT * FROM table_like WHERE col_1 LIKE '%\_ADMIN' ESCAPE '\'; COL_1 -------------------- DATA_BASE_ADMIN SQL> 

Ici LIKE recherche une expression terminant par _ADMIN et commençant par n'importe quels autres caractères (%).
Afin de ne pas être interpréter comme le joker underscore (_) on utilise la clause ESCAPE en definissant '\' comme caractère d'échappement ainsi le caractère qui suit ce caractère d’échappement '\' est interprété comme un caractère et non comme un joker underscore (_).

 

 

Haut de Page www.dba-ora.fr

 

Liens en rapport avec l'article et qui sont susceptibles de vous intéresser
 

Partager cet article

Repost 0
Published by Oracle SQL - dans OPÉRATEURS SQL
commenter cet article

commentaires