2015-10-14 108 views
0

如何從Oracle數據庫中檢索格式爲'yyyy-mm-dd hh24:mi:ss'的EST時間戳?如何從Oracle獲取EST時間戳?

+0

*究竟*您通過EST這裏是什麼意思?你的意思是東部時間(在UTC-5和UTC-4之間變化)還是東部標準時間(始終是UTC-5)?是否有任何理由需要在SQL中而不是在客戶端代碼中執行此操作? –

+0

結賬此功能TO_TIMESTAMP_TZ()http://docs.oracle.com/cd/B19306_01/server.102/b14200/functions194.htm – thatjeffsmith

回答

0

可以使用NEW_TIME()函數:

select to_char(new_time(current_timestamp, 'PST', 'EST'), 'yyyy-mm-dd HH24:MI:SS') from dual; 

以上將轉換從PST到EST。

+0

這不是給予EST .... – Rita

+0

它確實如果你提供適當的時區從...轉換。如果您的oracle會話(您的用戶)不在PST時區,那麼您需要使用適合您會話時區的時區。 – gmiley

2

你是什麼意思EST

SELECT tzabbrev, TZ_OFFSET(tzname), tzname 
FROM V$TIMEZONE_NAMES tz 
WHERE tzabbrev = 'EST' 
ORDER BY 1,2,3; 

TZABBREV TZ_OFFSET(TZNAME) TZNAME 
EST +10:00 Australia/Brisbane 
EST +10:00 Australia/Lindeman 
EST +10:00 Australia/Queensland 
EST +10:30 Australia/Broken_Hill 
EST +10:30 Australia/Yancowinna 
EST +11:00 Australia/ACT 
EST +11:00 Australia/Canberra 
EST +11:00 Australia/Hobart 
EST +11:00 Australia/LHI 
EST +11:00 Australia/Lord_Howe 
EST +11:00 Australia/Melbourne 
EST +11:00 Australia/NSW 
EST +11:00 Australia/Sydney 
EST +11:00 Australia/Tasmania 
EST +11:00 Australia/Victoria 
EST -05:00 America/Cayman 
EST -05:00 America/Detroit 
EST -05:00 America/Fort_Wayne 
EST -05:00 America/Grand_Turk 
EST -05:00 America/Indiana/Indianapolis 
EST -05:00 America/Indiana/Marengo 
EST -05:00 America/Indiana/Vevay 
EST -05:00 America/Indianapolis 
EST -05:00 America/Iqaluit 
EST -05:00 America/Jamaica 
EST -05:00 America/Kentucky/Louisville 
EST -05:00 America/Louisville 
EST -05:00 America/Montreal 
EST -05:00 America/New_York 
EST -05:00 America/Panama 
EST -05:00 America/Thunder_Bay 
EST -05:00 Canada/Eastern 
EST -05:00 EST 
EST -05:00 EST5EDT 
EST -05:00 Jamaica 
EST -05:00 US/East-Indiana 
EST -05:00 US/Eastern 
EST -05:00 US/Michigan 
EST -06:00 America/Cancun 
EST -06:00 America/Chicago 
EST -06:00 America/Indiana/Knox 
EST -06:00 America/Indiana/Petersburg 
EST -06:00 America/Indiana/Vincennes 
EST -06:00 America/Knox_IN 
EST -06:00 America/Managua 
EST -06:00 America/Rankin_Inlet 
EST -06:00 CST 
EST -06:00 US/Central 
EST -06:00 US/Indiana-Starke 
EST -07:00 America/Cambridge_Bay 

無論如何,你可以像這樣做:

select to_char(localtimestamp at time zone 'US/Eastern', 'yyyy-mm-dd HH24:MI:SS') 
from dual; 

或根據您的需要:

select to_char(localtimestamp at time zone '-06:00', 'yyyy-mm-dd HH24:MI:SS') 
from dual;