El operador SQL `LIKE`: búsquedas eficaces con SQL

El operador SQL LIKE es una de las herramientas SQL más importantes para simplificar las búsquedas de patrones específicos en conjuntos de datos. Utiliza comodines y patrones que permiten analizar conjuntos de datos y realizar consultas con mucha más facilidad.

¿Qué es el operador SQL LIKE?

Como si fuera un perro rastreador, el operador SQL LIKE permite buscar coincidencias exactas en conjuntos de datos o cadenas de caracteres o utilizar comodines y patrones según sea necesario. Los comodines en SQL, también conocidos como wildcards, se usan únicamente con el operador LIKE, lo que ayuda a filtrar datos de manera eficaz y flexible y optimiza notablemente el rendimiento de SQL. El operador LIKE suele utilizarse junto con la cláusula WHERE y los comandos SQL SQL DELETE, SQL SELECT o SQL UPDATE.

Consejo

Si hasta ahora no has probado todas las funcionalidades de SQL, puedes echar un vistazo a la introducción con ejemplos de SQL para comprender lo básico.

La sintaxis del operador LIKE

Esta es la sintaxis básica de LIKE:

SELECT  columnaA,  columnaB, …
FROM tablaA
WHERE columnaA  LIKE 'patrón o comodín'
sql

Se utilizan los siguientes parámetros:

  • SELECT: especifica las columnas de las que se desea obtener datos. Al utilizar un asterisco *, también se pueden seleccionar todos los conjuntos de datos.
  • FROM: indica las columnas que se tienen en cuenta para la búsqueda.
  • WHERE: define columnas específicas para la consulta.
  • LIKE: establece patrones de búsqueda. Puedes utilizar cadenas de caracteres específicas para coincidencias exactas o comodines SQL.

Comodines de SQL adecuados para SQL LIKE

Para realizar búsquedas en SQL, los comodines SQL deberían usarse solo con el operador LIKE para obtener resultados similares o coincidentes. Estos son los comodines más importantes:

  • Signo de porcentaje %: el % reemplaza uno o más caracteres en el patrón de búsqueda. Con %patróndebúsqueda% se puede filtrar el conjunto de datos según el patrón definido entre los signos de porcentaje. No importa dónde se encuentren los resultados en el conjunto de datos ni qué cadenas de caracteres aparezcan antes o después del patrón de búsqueda. Al utilizar patrón%búsqueda, se filtran los registros según resultados que comiencen y terminen con caracteres antes y después del %.
  • Guion bajo _: sirve para reemplazar caracteres individuales en el patrón de búsqueda. Por ejemplo, al buscar S_RA, se filtran los datos para obtener todos los nombres que comienzan por S y terminan en RA, donde la segunda letra es desconocida.
  • Corchetes […]: entre ellos se especifica el conjunto de caracteres para el que se realiza la búsqueda. Por ejemplo, con [a-d] estableces que estás buscando una letra entre la A y la D en el patrón de búsqueda.

Usos del operador LIKE

LIKE puede utilizarse para realizar consultas y búsquedas de manera casi ilimitada. Por ejemplo, es posible:

  • buscar variantes de nombres que comienzan o terminan con una secuencia determinada de caracteres cuando no se conoce el nombre exacto,
  • buscar por un dominio específico de correo electrónico (por ejemplo, .es),
  • filtrar coincidencias exactas con términos de búsqueda específicos sin comodines SQL,
  • filtrar productos con palabras determinadas en el nombre del producto o buscar ciertas características de productos,
  • excluir datos combinando el operador NOT con LIKE,
  • filtrar resultados, por ejemplo, por fecha, rango de fechas o por valores numéricos como precios de productos.
Consejo

Para trabajar de forma eficaz con conjuntos de datos, es necesario contar con una solución segura y potente para el sistema de gestión de bases de datos. En el Hosting SQL Server de IONOS encontrarás ofertas de servidores y hosting adaptados a tus necesidades.

Servidores virtuales VPS
Virtualización completa con acceso root
  • Ancho de banda de hasta 1 Gb/s y tráfico ilimitado
  • Almacenamiento SSD NVMe ultrarrápido
  • Incluye: edición Plesk Web Host

Ejemplos para realizar búsquedas con SQL LIKE

Se pueden utilizar distintos comandos LIKE en función del caso y del conjunto de datos. A continuación, te damos ejemplos que ilustran cómo funciona SQL LIKE.

Filtrar con términos de búsqueda exactos

Imagina que tienes que buscar en la tabla “Clientes” por clientes con un apellido concreto. Al utilizar SQL LIKE puedes obtener todos los clientes que tengan ese apellido. Lo mismo ocurre al buscar por valores numéricos exactos, como los precios de un producto.

Por ejemplo:

SELECT  *
FROM  clientes
WHERE  apellido  LIKE  'Martínez'
sql

Filtrar con signos de porcentaje

Puedes utilizar los comodines SQL para filtrar grandes conjuntos de datos por patrones. Con los signos de porcentaje puedes filtrar, por ejemplo, todos los nombres que empiecen por “M” y terminen en “ez” en una tabla de clientes:

SELECT  *
FROM  clientes
WHERE  apellido  LIKE  'm%ez'
sql

Si quieres buscar todas las direcciones de correo electrónico que tengan el dominio .es, puedes escribir lo siguiente:

SELECT  *
FROM  clientes
WHERE  dirección-correo-electrónico  LIKE  '%.es'
sql

Filtrar con guion bajo

Si necesitas buscar en la tabla “Clientes” un apellido del que solo conoces las dos primeras y las dos últimas letras, pero no las letras que hay entre medias, debes escribir lo siguiente:

SELECT  *
FROM  clientes
WHERE  apellido  LIKE  'Ma_ez'
sql

Excluir datos con NOT LIKE

Puedes invertir la búsqueda con el operador SQL LIKE combinándolo con SQL NOT. De esta manera, se filtra un conjunto de datos para obtener resultados que no coinciden con el término de búsqueda o el patrón especificado. Por ejemplo, puedes buscar todos los clientes cuyo apellido no igual que el nombre especificado escribiendo lo siguiente:

SELECT  *
FROM  clientes
WHERE  apellido  NOT LIKE  'Martínez'
sql

Alternativas a SQL LIKE

Aunque SQL dispone de otros operadores, SQL LIKE destaca por permitir búsquedas más flexibles y precisas con el uso de wildcards como los comodines y los patrones, lo que es especialmente útil cuando los términos de búsqueda no son exactos.

Estos operadores funcionan de manera similar a SQL LIKE:

  • Igual a =: filtra resultados que coinciden exactamente con el término de búsqueda.
  • Distinto de !=: filtra resultados que no coinciden exactamente con el término de búsqueda.
  • Menor que < o mayor que >: devuelve valores numéricos de los conjuntos de datos que son menores o mayores que el valor buscado. Al utilizar <= o >=, se filtran resultados que son menores o iguales, o mayores o iguales que el valor buscado.
¿Le ha resultado útil este artículo?
Page top