2015-11-04 86 views
0

如何將印度標準時間格式轉換爲oracle日期格式。將IST日期格式轉換爲Oracle sysdate格式

如:

Mon May 23 2016 00:00:00 GMT+0530 (India Standard Time) 

要求的格式

23-May-16 
+0

日期沒有格式,它們是二進制值。 IST是指時區,而不是格式。 Oracle *具有*日期類型,因此不需要存儲字符串而不是日期。要麼你在數據庫中存儲字符串而不是日期(這是一個錯誤),或者你想將日期值格式化爲特定的格式以便顯示 - 最好在客戶端完成?如果你必須在服務器上這樣做,你應該檢查Oracle的字符串格式化函數,如'to_char' –

回答

0

這解析輸入字符串,並返回一個日期值,給大家:

select cast(to_timestamp_tz('Mon May 23 2016 00:00:00 GMT+0530', 'Dy Mon DD YYYY HH24:MI:SS "GMT"TZHTZM') as date) as converted_to_date_value 
from dual; 

這解析輸入字符串爲「帶時區的時間戳「值並將值重新格式化爲所需格式的字符串:

select to_char(to_timestamp_tz('Mon May 23 2016 00:00:00 GMT+0530', 'Dy Mon DD YYYY HH24:MI:SS "GMT"TZHTZM'), 'DD-Mon-RR') as converted_to_your_format 
from dual; 

享受!

腳註:請注意,不存在您引用的「oracle日期格式」。 Oracle有其date數據類型,根據您的客戶端以及服務器區域設置,可以有許多許多不同的顯示解釋。

+0

謝謝你的意見。 –