2015-07-10 58 views
0

我已經收到特定格式的日期,其格式爲 2015-06-13T21:49:13.395-07:00它在數據庫中作爲varchar插入。指定格式的SQL的格式日期

我想這個日期轉換爲日期格式,但我沒有得到正確的格式爲同一

+2

你有使用'TO_DATE()'? –

+2

[Convert String ISO-8601 date to oracle's timestamp datatype]可能的重複(http://stackoverflow.com/questions/26671557/convert-string-iso-8601-date-to-oracles-timestamp-datatype) – OldProgrammer

回答

5

使用to_timestamp_tz()功能,您的字符串轉換爲時間戳與時區的數據類型的值:

select to_timestamp_tz('2015-06-13T21:49:13.395-07:00' 
         , 'yyyy-mm-dd"T"hh24:mi:ss.ffTZH:TZM') as res 
    from dual 

結果:

RES        
---------------------------------- 
13.06.15 21:49:13,395000000 -07:00 
+0

Hi Nicholas我可以將其轉換爲特定格式的列嗎?基本上我使用子字符串將其轉換爲MM/DD/YYYY hh24:mi:ss.But是否有直接或有效的方式? –

0
SELECT CAST(LEFT(REPLACE('2015-06-13T21:49:13.395-07:00','T',' '),23) AS DATETIME)