oracle to_char转换日期格式为28-NOV-14 03.01.10.000000000 AM这样的格式

2024年11月17日 13:26
有1个网友回答
网友(1):

1.首先sysdate是取得不到毫秒的
如果要取得毫秒需要用systimestamp

2. 其次,如果你的数据库默认的NLS_DATA_LANGUAGE不是英语,那么月份显示的就不是NOV,需要做下处理

3. AM或PM是没有这样的格式的,需要自己写个语句

select to_char(systimestamp, 'dd-MON-yy hh.mi.ss.ff ', 'NLS_DATE_LANGUAGE=American')
||
case when to_char(sysdate, 'hh24') >= '12' then 'PM' else 'AM' end show_time
from dual;