El siguiente campo TIME_SEND es un VARCHAR2(20) y guarda hora minutos segundos. Ejemplo: 122040. Ante este tipo de casos siempre aclaro que no es mi letra, osea, algún otro hizo ese campo con ese tipo de datos y yo no lo puedo cambiar así como así.
El punto es que para un reporte en Microstrategy, necesito formatear ese valor que quede: 12:20:40. Para lo cual utilizo esta consulta:
SELECT TO_CHAR(TIME_SEND,'hh:mi:ss') as callTime
FROM Tabla;
Y aparece el error ORA-01481:
ORA-01481: modelo de formato numérico no válido
01481. 00000 - "invalid number format model"
*Cause: The user is attempting to either convert a number to a string
via TO_CHAR or a string to a number via TO_NUMBER and has
supplied an invalid number format model parameter.
*Action: Consult your manual.
Para este error mi solución es sencilla. Si es texto trátalo como texto.
SELECT SUBSTR(TIME_SEND,1,2)||':'||SUBSTR(TIME_SEND,3,2)||':'||SUBSTR(TIME_SEND,5,2) AS CALLTIME
FROM Tabla;
No hay comentarios:
Publicar un comentario