Remover acentos en una consulta SQL (Oracle)

noviembre 14, 2008

El dia de hoy necesitaba ejecutar una consulta que me regresara los valores de una columna sin acentos.
Buscando por ahi encontre una pagina donde se muestra como hacerlo en PostgreSQL, pero que tambien funciona en Oracle.

Basta con utilizar la funcion TRANSLATE de la siguiente forma

SELECT TRANSLATE(COLUMNA,
   'áéíóúàèìòùãõâêîôôäëïöüçÁÉÍÓÚÀÈÌÒÙÃÕÂÊÎÔÛÄËÏÖÜÇ',
   'aeiouaeiouaoaeiooaeioucAEIOUAEIOUAOAEIOOAEIOUC')
FROM TABLA

donde COLUMNA es el nombre de la columna que quieres remover los acentos y TABLA pues la tabla =)

Nota: No se si los caracteres acentuados que reemplaza sean todos los que existen pero a mi me funciono de maravilla.

Anuncios

6 comentarios to “Remover acentos en una consulta SQL (Oracle)”

  1. Roberto Says:

    Perfecto, yo lo he recudido a esto:
    TRANSLATE(UPPER(” & Campo & “),’ÁÉÍÓÚ’,’AEIOU’)
    con cuidado de hacer un UCASE tambien del texto que uso de busqueda en el like.

    Queda así:
    ….
    Where = “UPPER(” & GetCAC(Campo2) & “) Like ‘%” & UCase(txt) & “%’ ”
    ….

    y la funcion GETCAC:

    Public Function GetCAC(Campo As String) As String
    GetCAC = “TRANSLATE(UPPER(” & Campo & “),’ÁÉÍÓÚ’,’AEIOU’)”
    End Function

  2. Roberto Says:

    OJO: En lo enviado hago un doble UPPER que no es necesario.

  3. fernando Says:

    Me sirvió muchisimo!!!

  4. DONA Says:

    MUCHAS GRACIAS 🙂

  5. Nat Says:

    Me sirvió, muchas gracias!

  6. john Says:

    Buenisisimo ‘aeiouáéíóú’, ‘AEIOUAEIOU’ y todo lo deje en mayúsculas.


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: