Oracle LIKE

Oracle Like



A Oracle i altres bases de dades relacionals, la concordança de patrons és una característica popular que us permet cercar patrons de cadenes mitjançant sintaxis especials. Per exemple, podeu cercar una subcadena dins d'un gran conjunt de cadenes mitjançant operadors i funcions de concordança de patrons.

Això fa que sigui molt útil per crear clàusules de cerca senzilles sense incórrer en penalitzacions importants de rendiment a la base de dades.







En aquest tutorial, trobareu l'operador LIKE a Oracle per realitzar consultes de concordança de patrons.



Operador Oracle LIKE

L'operador LIKE d'Oracle us permet cercar un patró específic en una columna determinada. Per exemple, podeu utilitzar-lo per trobar totes les files on el nom d'un client comença amb el patró 'Ja'.



Sovint trobareu que aquest operador s'utilitza conjuntament amb altres clàusules SQL, com ara la clàusula WHERE, per filtrar els nostres resultats en funció d'un patró específic.





Podem expressar la sintaxi de l'operador LIKE en SQL tal com es mostra a continuació:

patró d'expressió LIKE [ ESCAPAR 'caràcter_escapada' ]



  1. El paràmetre d'expressió especifica la columna que voleu cercar.
  2. El paràmetre de patró defineix el patró específic que voleu cercar. El patró especificat pot contenir caràcters comodins com % i _ per fer coincidir qualsevol nombre de caràcters o un sol caràcter, respectivament.
  3. També podem incloure la clàusula ESCAPE per especificar un caràcter d'escapada utilitzat per cercar els caràcters comodís reals.

Exemples d'operadors LIKE d'Oracle

Els exemples següents mostren com utilitzar l'operador LIKE en una taula Oracle.

Suposem que tenim una taula que conté la informació del client com es mostra a continuació:

Exemple 1: ús del % de caràcters comodí

Podem utilitzar els % de caràcters comodí per fer coincidir qualsevol cadena de zero o més caràcters. Per exemple, podem trobar totes les entrades en una taula que conté el Nom ‘Will%’.

Agafeu la taula dels empleats que es mostra a continuació:

seleccionar nom, cognoms, sou
dels EMPLEATS
on agrada a FIRST_NAME 'Voluntat%'
ordenar per nom;

La consulta anterior selecciona les columnes first_name, last_name i salari de la taula dels empleats i ordena els valors resultants per la columna first_name.

També combinem una clàusula where juntament amb un operador LIKE amb els caràcters comodins % per obtenir només les files on el primer nom comença amb 'Will'.

Això hauria de tornar les files com:

També podem utilitzar el caràcter comodí % per obtenir les files que acaben en un patró específic.

A continuació es mostra un exemple:

seleccionar nom, cognoms, sou
dels EMPLEATS
on agrada a FIRST_NAME '%és'
ordenar per nom;

En aquest cas, la consulta anterior hauria de retornar totes les files on el primer nom acaba en 'er'. A continuació es mostra un exemple de valor resultant:

L'operador LIKE de la base de dades Oracle distingeix entre majúscules i minúscules per defecte, per la qual cosa és essencial tenir-ho en compte mentre cerqueu patrons específics. Podeu utilitzar altres funcions, com ara inferior i superior, per negar aquest comportament.

Exemple 2: ús de la clàusula d'escapament

L'exemple següent mostra com utilitzar la clàusula ESCAPE a l'operador LIKE d'Oracle:

seleccionar nom, cognoms, sou, commission_pct
dels EMPLEATS
on commission_pct com '20\%' escapar '\' ;

La consulta anterior selecciona les columnes first_name, last_name, salari i commission_pct de la taula EMPLOYEES. La clàusula WHERE utilitza l'operador LIKE amb la clàusula ESCAPE per obtenir els registres on la columna commission_pct conté la cadena '20%' (amb un caràcter % literal, no un comodí).

En aquest cas, escapem del caràcter % amb un caràcter de barra invertida (\) quan busquem la cadena 20%. Això permet que l'operador LIKE cerqui la cadena exacta '20%' en lloc de tractar el caràcter % com un comodí.

Aquesta consulta retornaria totes les files de la taula EMPLOYEES on la columna commission_pct conté la cadena exacta '20%', juntament amb les columnes first_name, last_name i salari d'aquestes files.

Conclusió

En aquesta publicació, heu après a utilitzar l'operador LIKE a les bases de dades Oracle per cercar patrons específics en una taula. Es proporcionen diversos exemples per destacar l'ús de caràcters comodís i la clàusula ESCAPE.