SQL | ME GUSTA

A veces podemos requerir tuplas de la base de datos que coincidan con ciertos patrones. Por ejemplo, es posible que deseemos recuperar todas las columnas donde las tuplas comienzan con la letra ‘y’, o comienzan con ‘b’ y terminan con ‘l’, o incluso patrones de strings más complicados y restrictivos. Aquí es donde la Cláusula LIKE viene a rescatar, a menudo junto con la Cláusula WHERE en SQL.

Hay dos tipos de comodines que se utilizan para filtrar los resultados:

  • % : Se utiliza para hacer coincidir cero o más caracteres. (Longitud variable)
  • _ : Se utiliza para hacer coincidir exactamente un carácter. (Longitud fija)

Las siguientes son las reglas para la coincidencia de patrones con la cláusula LIKE:

Patrón Sentido
‘a%’ Coincidencia de strings que comienzan con ‘a’
‘%a’ Coincidencia de strings con final en ‘a’
‘a’ Haga coincidir las strings que contienen el comienzo con ‘a’ y terminan con ‘t’.
‘%guau%’ Haga coincidir strings que contengan la substring ‘wow’ en cualquier posición.
‘_guau%’ Haga coincidir las strings que contienen la substring ‘wow’ en la segunda posición.
‘_a%’ Coincide con strings que contienen ‘a’ en la segunda posición.
‘a_ _%’ Haga coincidir strings que comiencen con ‘a’ y contengan al menos 2 caracteres más.

Ejemplo:

Digamos que tenemos una relación, Proveedor. Queremos probar varios patrones usando la cláusula LIKE:

Tabla de proveedores:

Identificación del proveedor Nombre Dirección
S1 Proveedores de Parangón 21-3, Ojla, Delhi
S2 Nación del mango 21, Faridabad, Hariana
S3 Negocios canadienses 6/7, Okhla Fase II, Delhi
S4 Comerciantes de caravanas 2-A, Pitampura, Delhi
S5 Harish e hijos Gurgaon, NCR
S6 Proveedores de OM 2/1, Faridabad, Hariana

Ejemplos de consultas y resultados:

SELECT SupplierID, Name, Address
FROM Suppliers
WHERE Name LIKE 'Ca%';

Producción:

S3 Negocios canadienses 6/7, Okhla Fase II, Delhi
S4 Comerciantes de caravanas 2-A, Pitampura, Delhi
SELECT *
FROM Suppliers
WHERE Address LIKE '%Okhla%';

Producción:

S1 Proveedores de Parangón 21-3, Ojla, Delhi
S3 Negocios canadienses 6/7, Okhla Fase II, Delhi
SELECT SupplierID, Name, Address
FROM Suppliers
WHERE Name LIKE '_ango%';

Producción:

S2 Nación del mango 21, Faridabad, Hariana

Aplicación: el operador LIKE es extremadamente ingenioso en situaciones como el filtrado de direcciones en el que conocemos solo un segmento o una parte de la dirección completa (como localidad o ciudad) y nos gustaría recuperar resultados basados ​​en eso. Los comodines se pueden explotar ingeniosamente para producir tuplas aún mejores y más filtradas según el requisito.

Este artículo es una contribución de Anannya Uberoi . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *