Oracle to_date with pm/am

Abe*_*uez 2 oracle to-date

我需要在oracle中将字符串转换为Date.

字符串的格式如下:

'08/11/1999 05:45:00 p.m.'
Run Code Online (Sandbox Code Playgroud)

但最后一个位置可以改变下午或者我试图做一些像:

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')
Run Code Online (Sandbox Code Playgroud)

但是给我一个错误ORA-01855:AM/AM或PM/PM要求......任何想法?

Ton*_*ews 6

试试这个:

to_date
  ( '08/11/1999 05:45:00 p.m.'
  , 'dd/mm/yyyy hh:mi:ss a.m.'
  , 'nls_date_language=american'
  )
Run Code Online (Sandbox Code Playgroud)

似乎"am"和"pm"而不是"am"和"pm"需要nls_date_language设置为"american".