2015-12-10 82 views
0

我已經看過這裏的答案,但沒有人似乎工作。Oracle日期時間datetime

我有例子倍以下日期和時間列,他們是如何存儲如下:

DATE_V  TIME_V 
26-NOV-15 10:58 

如何添加這些連成一列,並將其轉換爲以下日期時間?尾部零不是必需的。

DateTime_V 
2015-11-26 10:58:00.000 

我已經使用了下面的代碼將它保存爲字符串,但我無法將它保存到datetime。

TO_CHAR(DATE_V, 'YYYY-MM-DD') || ' ' || TO_CHAR(TO_timestamp(time_V, 'HH24:MI'),'HH24:MI') 

= 2015-11-26 10:58 
+2

爲什麼你將時間存儲爲單獨的列?您是否知道Oracle'DATE' _includes_時間部分? –

+0

這兩列是什麼數據類型? Oracle既沒有日期型數據類型也沒有時間型數據類型。這些字符串還是其他什麼? –

+1

所以使用'to_date(your_expression,'YYYY-MM-DD HH24:MI')''有什麼問題? – Stawros

回答

1

假設(髒話),這些都被存儲VARCHAR2字段的內容應該工作:

SELECT DATE_V, TIME_V, TO_DATE(DATE_V || ' ' || TIME_V, 'DD-MON-RR HH24:MI') AS DATETIME_V 
    FROM YOURTABLE 

SQLFiddle here

好運。

+0

謝謝大家的幫助。這些信息是一個系統表,它就是它通過的方式。我會發表你的評論。 – Mally