Sql Where Like: Coincidencia de patrones

En este artículo aprenderá a usar la combinación en sql where like, el operador LIKE en SQL se utiliza dentro de la cláusula WHERE para filtrar datos utilizando patrones como todos los valores que comienzan con «S» en una consulta.

El uso de sql where like nos permite realizar coincidencias parciales de los valores de los datos y obtener respuestas a preguntas que no se pueden hacer con las comparaciones convencionales.

Sintaxis en sql where like

La sintaxis que debe utilizar para la combinación en sql where like es la siguiente:

SELECT *
FROM table
WHERE columna LIKE 'condición' 

El operador LIKE utiliza los siguientes caracteres comodín para especificar un patrón:

PatrónDescripción
%El % coincide con cero, uno o varios caracteres (mayúsculas o minúsculas) o números.
Por ejemplo, ‘A%’ coincidirá con todas las cadenas que comiencen con ‘A’ seguidas de cualquier número de caracteres o números.
_El signo de subrayado _ coincide con cualquier carácter o número.
Por ejemplo, ‘A_’ coincidirá con todas las cadenas con dos caracteres donde el primer carácter debe ser ‘A’ y el segundo carácter puede ser cualquier cosa.
[]El [] coincide con cualquier carácter individual dentro del rango especificado en el [].
Por ejemplo, ‘A[e,l,p]’ coincidirá con ‘Apple’, ‘Aelp’, ‘Alep’, ‘Aple’, etc.
[^]El [^] coincide con cualquier carácter individual excepto el rango especificado en el [^]. Por ejemplo, ‘A[^e,l,p]’ coincidirá con cualquier cosa que comience con ‘A’, pero no con ‘Apple’, ‘Aelp’, ‘Alep’, ‘Aple’, etc.

 

Ejemplo where like en sql server

SELECT * 
FROM Empleado 
WHERE ciudad LIKE 'm%'

sql where like

Arriba, WHERE ciudad LIKE ‘m%’ recupera todos los registros donde el valor en ciudad comienza con ‘m’ seguido de cualquier número de caracteres en la base de datos MS SQL Server

Ejemplo SQL where like con el comodín %

SQL WHERE LIKE Coincidencia de patrones: La condición de coincidencia LIKE se utiliza para hacer coincidir los valores que se ajustan a un patrón especificado. A diferencia del operador de comparación igual (=), que requiere una coincidencia exacta, con LIKE podemos especificar un patrón para que coincida parcialmente con los campos.

Un ejemplo en el que la cláusula que utiliza la condición LIKE para encontrar a todos los empleados cuyos nombres contiene en cualquier posición la letra R.

SELECT  *
FROM Empleado
WHERE Nombre like '%R%'

Ejemplo SQL where like con el patrón de búsqueda 

La siguiente consulta devolverá registros cuya ciudad contenga dos letras y ‘R’ en la primera posición. 

SELECT * 
FROM Empleado 
WHERE ciudad LIKE 'R_'

La siguiente tabla enumera los patrones de comandos utilizados con el operador LIKE:

PatrónDescripción
Where Nombre like ‘john’Devuelve registros cuyo  valor nombre es ‘john’ o ‘JOHN’ o ‘John’ o ‘jOhN’ o ‘JoHn’.
Where Nombre like ‘j%’Devuelve registros cuyo valor nombre comienza con ‘j’ o ‘J’ seguido de cualquier número de caracteres o números.
Where Nombre like ‘%a%’Devuelve registros cuyo valor nombre contiene ‘a’ o ‘A’ en cualquier posición.
Where Nombre like ‘a %b’Devuelve registros cuyo valor nombre debe comenzar con ‘a’ o ‘A’ y el último carácter debe ser ‘b’ o ‘B’.
Where Nombre like ‘_a’Devuelve registros cuyo valor nombre contiene dos caracteres y el segundo carácter debe ser ‘a’ o ‘A’.
Where Nombre like ‘_a%’Devuelve registros cuyo valor nombre contiene los segundos caracteres ‘a’ o ‘A’.
Where Nombre like ‘%a_’Devuelve registros cuyo valor nombre tiene el penúltimo carácter ‘a’ o ‘A’.
Where Nombre like ‘___’Devuelve registros cuyo valor nombre debe tener tres caracteres.
Where Nombre like ‘___%’Devuelve registros cuyo valor nombre debe contener al menos tres caracteres o más.
Where Nombre LIKE ‘A[i,m,t]’Devuelve registros cuyo valor nombre comienza con ‘A’ y va seguido de cualquier carácter especificado en [].
Where Nombre like ‘A[^i,m,t]’Devuelve registros cuyo valor nombre comienza con ‘A’ y no debe seguir ningún carácter especificado en [].

La tabla anterior muestra los patrones más comunes utilizando la combinación en SQL where like

Operador NOT Like

Utilice el operador NOT con el operador LIKE para filtrar registros que no son iguales con la cadena especificada.

SELECT *
FROM CLIENTES
WHERE NOMBRE NOT LIKE 'm%';

En esta consulta Arriba, NOMBRE NOT LIKE 'm%' recupera registros donde los NOMBRE no comienzan con ‘m’.

Conclusión 

En resumen, el uso de WHERE combinado con LIKE en SQL ofrece ventajas significativas para realizar búsquedas flexibles en datos de texto. Permite filtrar filas basándose en patrones parciales o incompletos, lo que facilita la búsqueda de palabras o frases que contengan ciertos patrones.

Los comodines % y _ son especialmente útiles, ya que representan uno o varios caracteres, permitiendo buscar subcadenas en cualquier posición dentro del campo de texto. Esto es valioso para aplicaciones que requieren funcionalidades de búsqueda más avanzadas que no se pueden lograr con igualdades exactas. Además, en SQL WHERE LIKE es útil cuando se trabaja con datos de texto no estructurados, como comentarios de usuarios o descripciones.

Sin embargo, es importante utilizarlo con precaución, ya que el uso excesivo de comodines al principio del patrón puede ralentizar las consultas, afectando el rendimiento. Por lo tanto, se recomienda optimizar las consultas y utilizar patrones más específicos para obtener resultados óptimos.

Deja un comentario