Herramientas

Truco SQL: Ignorar acentos en búsquedas SQL

En los campos de texto de las bases de datos es habitual que existan acentos u otros caracteres especiales. Aunque la mayoría de los sistemas actuales admiten estos caracteres sin problemas, no extraño encontrar la misma palabra con y sin acento en diferentes registros. Por lo que saber cómo ignorar acentos en búsquedas SQL nos puede facilitar el trabajo en muchas ocasiones.

Intercalación

El truco para ignorar los acentos en las búsquedas está en cambiar la intercalación de las cadenas de texto una codificación que sea insensible al uso de acentos, como puede ser el caso de Latin1_general_CI_AI. Al hacer esto, como ya se explicó en el caso de Python, a la hora de comparar dos cadenas de texto los acentos y otros caracteres especiales se ignorarán. Por lo que al buscar por ejemplo “este”, también serán válidas cadenas de texto como “éste”.

Buscar cadenas exactas

Así que, si queremos buscar todos los apellidos “Diez” en una base de datos, independientemente de que tengan o no el acento, se puede hacer con la siguiente línea en SQL Server:

SELECT last_name FROM clients WHERE last_name = 'Diez' COLLATE Latin1_general_CI_AI;

Buscar cadenas que contienen

El truco también sirve para el caso de querer buscar una subcadena. Lo que se puede hacer con LIKE. Así que si queremos buscar un apellido ignorando el acento en un campo con el nombre completo solo tenemos que hacer:

SELECT full_name FROM clients WHERE last_name LIKE '%Diez%' COLLATE Latin1_general_CI_AI;

Escribiendo antes y después de la texto a buscar el comodín % para indicar que busque la subcadena.

Conclusiones

En esta ocasión hemos visto un truco rápido para mejorar las búsquedas en bases de datos. Al poder comparar las cadenas de texto ignorando acentos en búsquedas SQL. Un problema más habitual de lo que desearíamos.

Un truco que he probado únicamente en Microsoft SQL Server, aunque posiblemente sea fácil en otros motores de base de datos. Si alguien lo ha probado en otros motores satisfactoriamente, lo pude indicar en los comentarios ayudar a otros lectores.

Imagen de Theodor Moise en Pixabay

¿Te ha parecido de utilidad el contenido?

Daniel Rodríguez

Share
Published by
Daniel Rodríguez

Recent Posts

DBSCAN y la selección de ε: teoría, intuición y aplicación práctica

Cuando hablamos de clustering, lo primero que viene a la mente suele ser k-means. Pero…

14 horas ago

El bestiario de los indicadores económicos absurdos: El zoo patrio

Cualquier país desarrollado tiene sus propios indicadores folclóricos. España, por motivos que tienen mucho que…

6 días ago

Por qué el banco te ofrece un 3% TAE y no es lo que parece

Entras a la web de tu banco. En la página principal, un banner llamativo: “Depósito…

1 semana ago

Analytics Lane lanza la versión 1.3 del laboratorio con nuevas herramientas de evaluación de modelos y utilidades prácticas

Seguimos ampliando el laboratorio de Analytics Lane con el lanzamiento de la versión 1.3, disponible…

2 semanas ago

Augurios deportivos y portadas malditas, o cuando The Economist predice mejor al revés – El bestiario de los indicadores económicos absurdos (parte 3)

Cerramos la serie internacional con la categoría más estrambótica de todas: indicadores que predicen el…

2 semanas ago

El Binning en Credit Scoring: El Arte de Discretizar Variables

Si el WOE y el IV son la base matemática del credit scoring, el binning…

2 semanas ago

This website uses cookies.