formato - to_date oracle 24 hour format
Oracle-Fecha/hora de obtención en milisegundos desde el campo de tipo de datos DATE (3)
Como dice RC, el tipo DATE solo admite una granularidad hasta el segundo.
Si la conversión a TIMESTAMP realmente no es una opción, ¿qué tal la adición de otra columna numérica que solo contiene los milisegundos?
Esta opción sería más engorrosa de manejar que una columna TIMESTAMP pero podría funcionar si no es posible convertir el tipo.
Tengo la columna last_update_date
definida como campo DATE
Quiero obtener tiempo en milisegundos.
Actualmente tengo:
TO_CHAR(last_update_date,''YYYY-DD-MM hh:mi:ss am'')
Pero también quiero obtener milisegundos.
Busqué en Google un poco y creo que los campos de DATE
no tendrán milisegundos. solo los campos TIMESTAMP
harán.
¿Hay alguna manera de obtener milisegundos? No tengo la opción de cambiar el tipo de datos para el campo.
En una situación similar en la que no podía cambiar los campos de una tabla (no podía permitirme ''romper'' el software de terceros), pero necesitaba una precisión de menos de un segundo, agregué una tabla suplementaria 1: 1 y una inserción posterior activar en la tabla original para publicar la marca de tiempo en la tabla suplementaria.
Si solo necesita saber el ORDEN de los registros que se agregan dentro del mismo segundo, podría hacer lo mismo, solo utilizando una secuencia como fuente de datos para el campo suplementario.
Los campos de FECHA en Oracle solo almacenan los datos en un segundo, por lo que no hay forma de proporcionar nada más preciso que eso. Si desea más precisión, debe usar otro tipo, como TIMESTAMP.
Aquí hay un enlace a otra pregunta de SO con respecto a la precisión de fecha y hora de Oracle.