Oracle - comparar con acento

 
Vista:

comparar con acento

Publicado por temavic (2 intervenciones) el 23/09/2003 13:17:02
¿Cómo puede comparar el valor de un texto almacenado en una tabla (con acentos), y otro que el usuario introduce por teclado (acentuado o no)?
No sé cómo tener en cuenta que las vocales puedan estar acentudas o no.
Muchas gracias de antemano.
Mª Teresa.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:comparar con acento

Publicado por Alejandro César (189 intervenciones) el 23/09/2003 17:13:42
Haz que ambas cadenas (la que está en la tabla y la que introduce el usuario) sean iguales sustituyendo las vocales acentuadas por no acentuadas:

SELECT REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(UPPER(&TEXTOTABLA), 'Á', 'A'), 'É', 'E'), 'Í', 'I'), 'Ó', 'O'), 'Ú´', 'U') A, REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(UPPER(&TEXTOUSUARIO), 'Á', 'A'), 'É', 'E'), 'Í', 'I'), 'Ó', 'O'), 'Ú´', 'U') B
FROM DUAL
WHERE REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(UPPER(&TEXTOTABLA), 'Á', 'A'), 'É', 'E'), 'Í', 'I'), 'Ó', 'O'), 'Ú´', 'U') = REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(UPPER(&TEXTOUSUARIO), 'Á', 'A'), 'É', 'E'), 'Í', 'I'), 'Ó', 'O'), 'Ú´', 'U')

Corre esto es SQL*Plus para que veas el resultado.

Salu2.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:comparar con acento

Publicado por Mª Teresa (2 intervenciones) el 24/09/2003 10:37:20
Muchas gracias. Tu respuesta me ha servido para darme una idea de cómo resolver el problema y al final lo he hecho así:
select translate('maría josé','áéíóú','aeiou') from dual;
Un saludo y hasta otra.
Mª Teresa.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar