Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Como converter 1985-02-07T00:00:00.000Z (ISO8601) para um valor de data no Oracle?


to_date converte a entrada para um DATE tipo que não suporta segundos fracionários. Para usar frações de segundos, você precisa usar um TIMESTAMP tipo que é criado ao usar to_timestamp

comentário de pst sobre o ff3 modificador também está correto.

Os valores "constantes" na máscara de formato precisam ser colocados entre aspas duplas

Então a afirmação final é:
select to_timestamp('1985-02-07T00:00:00.000Z', 'YYYY-MM-DD"T"HH24:MI:SS.ff3"Z"')
from dual;