2016-06-28 58 views
0

我試圖格式2016/06/26數據轉換爲26/06/2016 00:00:00 我嘗試幾個選項都得到錯誤「無效的月名」的時候, 任何想法/建議? 感謝轉換爲yyyy/MM/DD爲DD/MM/YYYY HH24:MI:SS

select to_date('2016/05/07 00:00:00','mm/dd/yyyy HH24:MI:SS') from dual 
+0

我的猜測是你使用的格式字符串包括月份名稱而不是月份號碼。 –

+0

告訴我們該命令是什麼表示錯誤 – Thomas

+0

你好,我編輯了我的答案 – bazyl

回答

1

爲了將一個字符串轉換成你需要把它轉換到一個日期的日期。你的問題是你試圖格式化一個字符串而不是日期。因此,對於您的特定情況下,它是:

--convert it first to a date 
select to_date('2016/05/07 00:00:00','yyyy/mm/dd HH24:MI:SS') 
    from dual 

--then convert it to a string in the format you want: 
select to_char(to_date('2016/05/07 00:00:00','yyyy/mm/dd HH24:MI:SS'), 
       'mm/dd/yyyy HH24:MI:SS') 
    from dual 

--since you want it as a date: 

--then convert it to a string in the format you want: 
select to_date(to_char(to_date('2016/05/07 00:00:00', 
           'yyyy/mm/dd HH24:MI:SS'), 
         'mm/dd/yyyy HH24:MI:SS') 
       'mm/dd/yyyy HH24:MI:SS') 
    from dual 

如果你只想你的字符串轉換成日期轉換,無論格式,只需使用第一個選擇我發現。感謝@Boneist在評論中指出了這一點。

+0

謝謝,但問題是,在最後我需要該值AS日期類型... – bazyl

+0

然後將其再次轉換爲日期。 –

+0

我試過了,但是在轉換整個輸入字符串之前我得到了錯誤信息的日期格式圖片結尾「 – bazyl

相關問題