oracle 中關於當前的sysdate,sysstimestap,current_date,curent_timestamp 區別

tolywang發表於2010-02-23

alter session set TIME_ZONE = 'Asia/Tokyo';

select sysdate,current_date,systimestamp,current_timestamp from dual

2008-6-19 9:35:55 ,2008-6-19 10:35:55,2008-6-19 9:35:55.038361 +08:00

2008-6-19 10:35:55.038365 +09:00

alter session set TIME_ZONE = 'Asia/Shanghai';

select sysdate,current_date,systimestamp,current_timestamp from dual

2008-6-19 9:38:39,2008-6-19 9:38:39,2008-6-19 9:38:39.640073 +08:00,2008-6-19 9:38:39.640073 +08:00


 Oracle資料庫to_date()與24小時製表示法及mm分鐘的顯示:

1、採用“yyyy-MM-dd HH:mm:ssORA 01810 格式作為格式進行轉換的弊端

在使用Oracle的to_date函式來做日期轉換時,許多程式設計師會下意識的採用“yyyy-MM-dd HH:mm:ss”格式作為格式進行轉換,但是在Oracle中會引起錯誤:“ORA 01810 格式程式碼出現兩次”。

示例:

select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mm:ss') from dual;

原因是SQL中不區分大小寫,MM和mm被認為是相同的格式程式碼,所以Oracle的SQL採用了mi代替分鐘。

select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mi:ss') from dual;

2、此外,我們還需要以24小時的形式顯示出要用的HH24

select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from dual;//mi是分鐘

select to_char(sysdate,'yyyy-MM-dd HH24:mm:ss') from dual;//mm會顯示月份

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-627541/,如需轉載,請註明出處,否則將追究法律責任。

相關文章