Подтвердить что ты не робот

Преобразование даты строки в datetime в Oracle

Как я могу преобразовать эту строковую дату в datetime в oracle.

2011-07-28T23:54:14Z

Использование этого кода вызывает ошибку:

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

Как это можно сделать?

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.

Обновление: -

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

Я вижу только дату не в столбце

28-JUL-11
4b9b3361

Ответ 1

Попробуйте следующее: TO_DATE('2011-07-28T23:54:14Z', 'YYYY-MM-DD"T"HH24:MI:SS"Z"')

Ответ 2

Эй, у меня была такая же проблема. Я пытался преобразовать 'varchar' в дату с TO_DATE('2017-02-20 12:15:32','YYYY-MM-DD HH24:MI:SS'), и все, что я получил, было 2017-02-20, время исчезло

Моим решением было использовать TO_TIMESTAMP('2017-02-20 12:15:32','YYYY-MM-DD HH24:MI:SS'), теперь время не исчезает.

Ответ 3

Вы можете использовать трансляцию в char, чтобы увидеть результаты даты

 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;