SQL WILCARDS o COMODINES: Cómo utilizarlos y para qué sirven

Un carácter comodín se utiliza para sustituir cualquier otro carácter en una cadena. Los caracteres comodín se utilizan con el operador SQL LIKE. El operador LIKE se utiliza en una cláusula WHERE para buscar un patrón específico en una columna. Hay dos comodines utilizados junto con el operador LIKE:

  • %: El signo de porcentaje representa cero, uno o varios caracteres
  • _ - El subrayado representa un solo carácter

¡Los comodines también se pueden utilizar en combinaciones!


Comodines con el operador LIKE

Aquí hay algunos ejemplos que muestran diferentes operadores LIKE con los comodines '%' y '_':

OPERADOR LIKEDESCRIPCIÓN
WHERE CustomerName LIKE 'a%' Encuentra los valores que empiezan por "a"
WHERE CustomerName LIKE '%a' Encuentra los valores que termine por "a"
WHERE CustomerName LIKE '%or%' Encuentra los valores que tengan "or" en cualquier posición.
WHERE CustomerName LIKE '_r%' Encuesntra los valores que tengamn "r" en segunda posición.
WHERE CustomerName LIKE 'a_%_%' Encuentra cualquier valor que comience con "a" y tenga al menos 3 caracteres de longitud
WHERE ContactName LIKE 'a%o' Encuentra los valores que comienzan con "a" y terminan con "o"

Usando el comodín %

La siguiente declaración SQL selecciona a todos los clientes con una Ciudad que comienza con "Mad", para buscar Madrid, por ejemplo:

SELECT * 
FROM Clientes
WHERE Ciudad LIKE 'Mad%';

La siguiente declaración SQL selecciona a todos los clientes con un país que comience por "Es":

SELECT * 
FROM Clientes
WHERE Ciudad LIKE '%Es%';

Usando el comodín: _

La siguiente declaración SQL selecciona a todos los clientes con una Ciudad que acabe por "drid", para buscar Madrid, por ejemplo:

SELECT * 
FROM Clientes
WHERE Ciudad LIKE '_drid';

La siguiente declaración SQL selecciona a todos los clientes con una Ciudad que comience con "L", seguida de cualquier carácter, seguida de "n", seguida de cualquier carácter, seguida de "on", para buscar London, por ejemplo:

SELECT * 
FROM Clientes
WHERE Ciudad LIKE 'L_n_on';

Usando el comodín [charlist]

La siguiente declaración SQL selecciona a todos los clientes con una Ciudad que comience con "m", "n" s "v":

SELECT * FROM Clientes
WHERE Ciudad LIKE '[mnsv]%';

La siguiente declaración SQL selecciona a todos los clientes con una Ciudad que comience con "a", "b" o "c":

SELECT * 
FROM Clientes
WHERE Ciudad LIKE '[a-c]%';

Usando el comodín [! Charlist]

Las dos siguientes declaraciones SQL seleccionan a todos los clientes con una ciudad que NO comience con "b", "s" o "p":

SELECT * 
FROM Clientes
WHERE Ciudad LIKE '[!bsp]%';

También se puede hacer con la siguiente declaración:

SELECT * 
FROM Clientes
WHERE Ciudad NOT LIKE '[bsp]%';