Oracle на сегодняшний день с PM/a. m
Мне нужно преобразовать строку в дату в oracle.
Формат строки выглядит следующим образом:
'08/11/1999 05:45:00 p.m.'
Но последняя позиция может изменить p. m или A. M.
Я попытался сделать что-то вроде:
to_date('08/11/1999 05:45:00 p.m.', 'dd/mm/yyyy hh:mi:ss a.m./p.m.')
to_date('08/11/1999 05:45:00 p.m.', 'dd/mm/yyyy hh:mi:ss am/pm')
Но верните мне ошибку ORA-01855: AM/Am или PM/PM требуется... есть идеи ?
2 ответов:
Попробуйте это:
to_date ( '08/11/1999 05:45:00 p.m.' , 'dd/mm/yyyy hh:mi:ss a.m.' , 'nls_date_language=american' )Похоже, что "AM" и "PM", а не "am" и "pm" требуют, чтобы
nls_date_languageбыло установлено на "american".
Чтобы преобразовать время для
amиpm, Просто дайтеa.m.как показано нижеto_date(UPPER('08/11/1999 05:45:00 p.m.'),'dd/mm/yyyy hh:mi:ss a.m.')Надеюсь, это поможет. пожалуйста, обратитесь https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions183.htm
Comments