Oracle 时间类型有两种:1 秒级的 DATE,2 毫秒级的 TIMESTAMP(3)
1 字符串转DATE
格式:to_date('时间字符串', 'YYYY-MM-DD HH24:MI:SS')
例子:to_date('2006-11-11 10:46:45', 'YYYY-MM-DD HH24:MI:SS')
注: '时间字符串' 要按照 'YYYY-MM-DD HH24:MI:SS' 的格式来
2 DATE转字符串
格式:to_char(时间, 'YYYY-MM-DD HH24:MI:SS')
例子:to_char(sysdate, 'YYYY-MM-DD HH24:MI:SS')
注: sysdate是系统时间
3 字符串转timestamp(3)
格式:timestamp '时间字符串'
例子:select timestamp'2007-11-12 12:11:11.123' from dual
注: '时间字符串' 要按照 'YYYY-MM-DD HH24:MI:SS.XXX'的格式来
4 timestamp(3)转字符串
格式:to_char(时间, 'YYYY-MM-DD HH24:MI:SSxFF')
例子:SELECT to_char(systimestamp, 'YYYY-MM-DD HH24:MI:SSxFF') FROM DUAL
注: systimestamp 是系统时间
select sysdate from dual; -- 29-十月-10 11:10:37
select systimestamp from dual; -- 29-10月-10 11.11.42.410249 上午 +08:00 (0-9 默认6位毫秒数)
select to_char(sysdate, 'YYYY-MM-DD HH24:MI:SS') from dual; -- 2010-10-29 11:10:21
select to_char(systimestamp, 'YYYY-MM-DD HH24:MI:SSxFF9') from dual; -- 2010-10-29 11:32:48.695317000
select to_date('2010-10-30 12:12:12', 'YYYY-MM-DD HH24:MI:SS') from dual; -- 30-十月-10 12:12:12
select timestamp '2010-10-10 12:12:12.123456789' from dual; -- 10-10月-10 12.12.12.123456789 下午