Oracle
 sql >> Database >  >> RDS >> Oracle

Come convertire 1985-02-07T00:00:00.000Z (ISO8601) in un valore di data in Oracle?

to_date converte l'input in un DATE tipo che non supporta i secondi frazionari. Per utilizzare i secondi frazionari devi usare un TIMESTAMP tipo che viene creato quando si utilizza to_timestamp

Il commento di pst su ff3 anche il modificatore è corretto.

I valori "costanti" nella maschera di formato devono essere racchiusi tra virgolette doppie

Quindi la dichiarazione finale è:

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