Como realizar una consulta en la cual, no me distinga las palabras con acento en una consulta. La solución para mysql es pelear con la molesta codificación de la tabla o de la base de datos en general.

Encontré una solución muy particular y efectiva para oracle y postgres haciendo uso de la función translate.
http://www.postgresql.org/docs/8.2/s...ns-string.html
La cual basta con realizar translate(campo,'áéíóúÁÉÍÓÚ','aeiouAEIOU') para ignorar las palabras que llevan acento y permitir una consulta tanto de palabras que tienen o no acento.
Lastimosamente mysql no cuenta con una función así (o por lo menos no la encontré) así que decidí crear una que simule en parte este molesto problema.
Comparto la función, por si alguien desea usarla y la forma como deben implementarla. (Acepto sugerencias y comentarios al respecto)
EJEMPLO
Código mysql:
Ver original
Como ven, en los registros, maria y lucia se encuentran con acento y sin acento. Para una consulta de personas llamadas lucia o maria quedaría:
Código mysql:
Ver original
+----------------+------+ | nombre | sexo | +----------------+------+ | maría fernanda | F | | maria lucia | F | +----------------+------+ +-------------+------+ | nombre | sexo | +-------------+------+ | maria lucia | F | | lucía | F | +-------------+------+
La función es esta:
Código mysql:
Ver original
DELIMITER $$ ---------------------------------------- --Declaración de variables requeridas--- ---------------------------------------- -------------------------------------------------------------------- --* Longitud guarda el numero de digitos de la palabra ingresada. -- --* contador recorre cada posición para comparar. -- --* campo_mod es la cadena a retornar. Con ls correcciones. -- -------------------------------------------------------------------- -------------------------------- --Inicialización de variables--- -------------------------------- --------------------------------------------------------------------------------------- --En el while se compara cada posición de la palabra y verifica si tiene acento o no.-- --Si tiene acento, lo cambia. sino tiene acento, lo deja tal como estaba. -- --------------------------------------------------------------------------------------- WHILE longitud >= contador DO ---------------------------------------------------------------- --Contador se incrementa para pasar a la siguiente posición. -- ---------------------------------------------------------------- end while; return campo_mod; end$$ delimiter ;
Espero les sirva.