2011-05-11 110 views
3

我有col1myTable这是varchar,我必须在这里插入时间戳,例如: - 09-MAY-11 10.23.12.0000 AM如何格式化时间戳

现在请告诉我:

  • 如何插入到mytable的与服用SYSDATE在上面的格式...
  • 如何在临相同的时间戳格式检索COL1数据..

回答

8

INSERT:

insert into myTable (col1) VALUES (to_char(systimestamp, 'dd-mon-yyyy hh.mi.ss.ff4 AM')); 

SELECT:

select to_timestamp(col1, 'dd-mon-yyyy hh.mi.ss.ff4 AM') from myTable ; 

但将数据直接存储为时间戳会好得多。 然后,您可以比较这些值或直接修改它们。

create table myTable1(col1 timestamp default systimestamp); 
+0

选择TO_TIMESTAMP(SYSDATE, 'DD-MON-YYYY hh.mi.ss.ff4 AM')从双 这给我'11 -MAY-11 12.00.00 AM” 但我想'11 -MAY-11 01.45.00 PM'(我的意思是时间被截断到12:00:00,但我想要实际时间) – Avi 2011-05-11 08:06:58

+0

'select to_char(systimestamp,'dd-mon-yyyy hh.mi.ss.ff4 AM' )from dual;'如果你不想要,并且如果你不想要小数秒然后:'从double中选择to_char(sysdate,'dd-mon-yyyy hh.mi.ss AM'); – schurik 2011-05-11 08:18:43