SQL LIKE Operador
El operador LIKE de SQL
El operador LIKE se utiliza en una cláusula WHERE para buscar un patrón específico en una columna.
Hay dos comodines que suelen usarse junto con el operador LIKE:
- El signo de porcentaje
%representa cero, uno o varios caracteres - El signo de subrayado
_representa un solo carácter
Aprenderá más sobre los comodines en el próximo capítulo.
Ejemplo
Seleccione todos los clientes que comienzan con la letra "a":
SELECT * FROM Customers
WHERE CustomerName LIKE 'a%';
Try it Yourself »
Sintaxis
SELECT column1, column2, ...
FROM table_name
WHERE columnN LIKE pattern;
Base de datos de demostración
A continuación se muestra una selección de la tabla Customers utilizada en los ejemplos:
| CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
|---|---|---|---|---|---|---|
| 1 |
Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
| 2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
| 3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
| 4 |
Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
| 5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
La _ comodín
El comodín _ representa un solo carácter.
Puede ser cualquier carácter o número, pero cada _ representa un, y sólo un, carácter.
Ejemplo
Devuelve todos los clientes de una ciudad que comienza con 'L' seguido de un carácter comodín, luego 'nd' y luego dos caracteres comodín:
SELECT * FROM Customers
WHERE city LIKE 'L_nd__';
Try it Yourself »
El comodín %
El comodín % representa cualquier número de caracteres, incluso cero caracteres.
Ejemplo
Devolver todos los clientes de una ciudad que contiene la letra 'L':
SELECT * FROM Customers
WHERE city LIKE '%L%';
Try it Yourself »
Comienza con
Para devolver registros que comiencen con una letra o frase específica, agregue % al final de la letra o frase.
Ejemplo
Devolver todos los clientes que comienzan con 'La':
SELECT * FROM Customers
WHERE CustomerName LIKE 'La%';
Try it Yourself »
Consejo: También puede combinar cualquier cantidad de condiciones utilizando los operadores AND o OR.
Ejemplo
Devolver todos los clientes que comiencen con 'a' o comiencen con 'b':
SELECT * FROM Customers
WHERE CustomerName LIKE 'a%' OR CustomerName LIKE 'b%';
Try it Yourself »
Termina con
Para devolver registros que terminen con una letra o frase específica, agregue % al comienzo de la letra o frase.
Ejemplo
Devolver todos los clientes que terminan en 'a':
SELECT * FROM Customers
WHERE CustomerName LIKE '%a';
Try it Yourself »
Consejo: También puedes combinar "empieza con" y "termina con":
Ejemplo
Devolver todos los clientes que comienzan con "b" y terminan con "s":
SELECT * FROM Customers
WHERE CustomerName LIKE 'b%s';
Try it Yourself »
Contiene
Para devolver registros que contengan una letra o frase específica, agregue % antes y después de la letra o frase.
Ejemplo
Devolver todos los clientes que contienen la frase 'or'
SELECT * FROM Customers
WHERE CustomerName LIKE '%or%';
Try it Yourself »
Combinar comodines
Cualquier comodín, como % y _ , se puede utilizar en combinación con otros comodines.
Ejemplo
Devolver todos los clientes que comiencen con "a" y tengan al menos 3 caracteres de longitud:
SELECT * FROM Customers
WHERE CustomerName LIKE 'a__%';
Try it Yourself »
Ejemplo
Devuelve todos los clientes que tienen "r" en la segunda posición:
SELECT * FROM Customers
WHERE CustomerName LIKE '_r%';
Try it Yourself »
Sin comodín
Si no se especifica ningún comodín, la frase debe tener una coincidencia exacta para devolver un resultado.
Ejemplo
Devolver a todos los clientes de España:
SELECT * FROM Customers
WHERE Country LIKE 'Spain';
Try it Yourself »