2011-03-22 100 views
2

當我使用sysdate查詢數據庫時,我得到了帶PST時間的sysdate。 [我的服務器在PST時區)從Oracle獲取IST日期

我如何轉換或從PST獲取IST日期。 [考慮夏令時開/關]

IST - 印度標準時間。 PST - 太平洋。

回答

2

你需要移動到時間戳和時區:

systimestamp AT TIME ZONE 'IST' 

PS:我沒有接近甲骨文現在並不能檢查名稱爲「IST」時區是否存在。如果沒有 - 你可以找到所有的時區中SELECT tzname FROM V$TIMEZONE_NAME

+0

您也可以使用UTC,如果Oracle沒有你的時區命名偏移: SYSTIMESTAMP AT TIME ZONE「+05:30」 – Craig 2011-03-22 13:13:38

+1

@Craig:是的,但在這種情況下,將無法處理夏季 – zerkms 2011-03-22 13:49:38

+0

的好處。如果在腳本中使用,則必須予以考慮。如果您的會話已經設置了正確的時區,另一種可能是使用「localtimestamp」而不是「systimestamp」。 – Craig 2011-03-22 13:57:25