Ubah tanggal string menjadi datetime di Oracle

Bagaimana saya bisa mengubah tanggal string ini menjadi datetime di oracle.

2011-07-28T23:54:14Z

Menggunakan kode ini menimbulkan kesalahan:

TO_DATE('2011-07-28T23:54:14Z',  'YYYY-MM-DD HH24:MI:SS')

Bagaimana ini bisa dilakukan?

Error report:
SQL Error: ORA-01861: literal does not match format string
01861. 00000 -  "literal does not match format string"
*Cause:    Literals in the input must be the same length as literals in
           the format string (with the exception of leading whitespace).  If the
           "FX" modifier has been toggled on, the literal must match exactly,
           with no extra whitespace.
*Action:   Correct the format string to match the literal.

Pembaruan:-

TO_DATE('2011-07-28T23:54:14Z', 'YYYY-MM-DD"T"HH24:MI:SS"Z"')

Saya hanya melihat tanggal bukan waktu di kolom

28-JUL-11
Larutan

Coba ini: TO_DATE('2011-07-28T23:54:14Z', 'YYYY-MM-DD"T"HH24:MI:SS"Z"')

Komentar (5)

Hei saya punya masalah yang sama. Saya mencoba mengubah ' 2017-02-20 12:15:32' varchar menjadi tanggal dengan TO_DATE(' 2017-02-20 12:15:32',' YYYYY-MM-DD HH24:MI:SS') dan semua yang saya terima adalah 2017-02-20 waktu menghilang

Solusi saya adalah menggunakan TO_TIMESTAMP('2017-02-20 12:15:32','YYYY-MM-DD HH24:MI:SS') sekarang waktunya tidak hilang.

Komentar (1)

Anda bisa menggunakan cast to char untuk melihat hasil tanggal

 select to_char(to_date('17-MAR-17 06.04.54','dd-MON-yy hh24:mi:ss'), 'mm/dd/yyyy hh24:mi:ss') from dual;
Komentar (0)