sql >> Base de Datos >  >> RDS >> Oracle

¿Cómo convertir 1985-02-07T00:00:00.000Z (ISO8601) a un valor de fecha en Oracle?

to_date convierte la entrada a un DATE tipo que no admite segundos fraccionarios. Para usar fracciones de segundo necesitas usar un TIMESTAMP tipo que se crea al usar to_timestamp

comentario de pst sobre el ff3 modificador también es correcto.

Los valores "constantes" en la máscara de formato deben estar entre comillas dobles

Así que la declaración final es:

select to_timestamp('1985-02-07T00:00:00.000Z', 'YYYY-MM-DD"T"HH24:MI:SS.ff3"Z"')
from dual;