假設這有一個簡單的解決方案,但我找不到它。Oracle日期時間戳轉換
我想在Oracle的DATE字段上做一些邏輯。我的願望是採取一個日期字段,並從中減去X小時。
例如:SELECT A.MyDATE - 100 Hours from dual;
然而,我需要在一個時間戳格式 'YYYY-MM-DD HH:MM' 的結果。我試過CAST(A.MyDATE as TIMESTAMP) - NUMTODSINTERVAL(100/24,'day')
然而它沒有工作。
我發現問題在於MyDATE字段在轉換爲時間戳時仍包含一些剩餘時間元素。我如何重置這些?
謝謝!
首先,定義「沒有工作」。你得到了什麼結果?你期望的結果是什麼?當你談論「剩餘時間元素」時,你是否試圖在「MyDate」開啓的任何一天從午夜開始減去100小時,而不是從「MyDate」開始的任何時間減去100小時?你想讓你的查詢返回什麼數據類型?你發佈的查詢返回一個'timestamp',但如果你正在討論想要一個特定的格式,這意味着你想返回一個'varchar2'。 – 2013-02-08 19:12:27
對不起,不夠清楚。如果MyDate是「2013-01-15」,我希望能得到「2013-01-10 20:00」。我沒有得到這個 - 我得到了像'2013-01-10 21:49'這樣的東西。我發現'MyDate'轉換爲時間戳時持有小時和分鐘,而不是00:00 - 不知道爲什麼。所以......我試圖在時間戳轉換後將MyDate的時間部分調零,但我不知道該怎麼做。 – NEW2WEB 2013-02-08 19:17:29