Uso de LIKE en la búsqueda sensible a mayúsculas y minúsculas
-
Búsqueda insensible a mayúsculas y minúsculas usando
LIKE
en MySQL - Búsqueda sensible a mayúsculas y minúsculas en MySQL
- Expresiones regulares en MySQL
Este artículo del tutorial le mostrará cómo usar el operador LIKE
para buscar una columna. Le mostraremos cómo usar esto correctamente para incluir todos los resultados que cumplan con criterios específicos, ya sea que los valores estén en mayúsculas o minúsculas o no.
Búsqueda insensible a mayúsculas y minúsculas usando LIKE
en MySQL
Al buscar una tabla, el operador LIKE
siempre se usa después de WHERE
al buscar una tabla.
Esto es especialmente útil cuando busca un término del que no está seguro, como un prefijo o un patrón de letras, o si desea incluir varias instancias que cumplan una condición específica.
Después de una instrucción SELECT
, especificando en qué columna de una tabla desea buscar, agregue el operador LIKE
seguido de los siguientes comodines:
- El comodín
%
buscará valores que comiencen con una letra colocada después de la letra. Asimismo, buscará valores que terminen en letra si se antepone el signo%
a la letra. - El comodín de subrayado (
_
) se utiliza para limitar la búsqueda a un valor después de utilizar el signo%
.
Puede usar lo anterior de diferentes maneras para producir diferentes resultados. El siguiente ejemplo muestra cómo buscar un término usando ambos comodines.
CREATE TABLE car_models (
brand TEXT NOT NULL,
model TEXT NOT NULL
);
INSERT INTO car_models VALUES ('Toyota', 'Camry');
INSERT INTO car_models VALUES ('toyota', 'Corolla');
INSERT INTO car_models VALUES ('toyota', 'corolla');
INSERT INTO car_models VALUES ('Ford', 'Prefect');
INSERT INTO car_models VALUES ('Ford', 'fiesta');
SELECT * FROM car_models WHERE car_models.model LIKE '%cor%'
Lo anterior devolverá solo las filas que contienen las letras cor
en esa secuencia. Al comenzar y terminar con el signo %
, la búsqueda se restringía a palabras con letras en ese orden.
| brand | model |
|-------|---------|
|toyota | Corolla |
|toyota | corolla |
La búsqueda ignoró las mayúsculas y buscó solo los valores que cumplían con los criterios. También puede ejecutar la siguiente declaración, que devuelve todos los modelos que contienen la letra c
.
SELECT * FROM car_models WHERE car_models.model LIKE '%C%'
Producción :
| brand | model |
|-------|---------|
|Toyota | Camry |
|toyota | Corolla |
|toyota | corolla |
|Ford | Prefect |
Los siguientes devolvieron todos los modelos con la letra c
. Sin embargo, si desea ser más específico, puede colocar el signo %
solo después de la letra c
para devolver modelos que comienzan con c
.
SELECT * FROM car_models WHERE car_models.model LIKE 'C%'
Producción :
| brand | model |
|-------|---------|
|Toyota | Camry |
|toyota | Corolla |
|toyota | corolla |
Búsqueda sensible a mayúsculas y minúsculas en MySQL
Si desea una búsqueda que distinga entre mayúsculas y minúsculas, puede agregar BINARIO
delante del operador LIKE
, y la búsqueda distinguirá entre mayúsculas y minúsculas.
SELECT * FROM car_models WHERE car_models.model LIKE BINARY 'c%'
Producción :
| brand | model |
|-------|---------|
|toyota | corolla |
Todos los modelos que comenzaban con una C
mayúscula fueron excluidos de la búsqueda.
Expresiones regulares en MySQL
Vale la pena aprender a usar expresiones regulares para búsquedas más específicas. Estos incluyen más caracteres especiales, como el signo %
, lo que le permite hacer más en una búsqueda.
Consiste en el signo *
, que permite un escenario en el que el valor que le sigue puede aparecer varias veces o ninguno. El signo +
, por otro lado, especifica que el siguiente carácter debe aparecer al menos una vez.
El REGEXP
y REGEXP_LIKE()
también se pueden usar en MySQL para marcar patrones específicos.