2013-02-12 31 views
1

我想做一個查詢,圖表日期是數據繪製的系統時間是超過8小時執行日期時間後。SQL日期>日期超過8小時

我使用下面的查詢:

select * from pat_results where app_type like 'L' and (chart_dt_utc > perform_dt_utc +8) 

的日期和時間格式爲兩列是2012年12月29日11時44分00秒

是+8是否正確?

+0

所以你的兩個日期欄,不是DATETIME,而是一個字符串?你正在研究哪個數據庫,因爲這可能取決於那個數據庫。 – 2013-02-12 02:00:27

+0

oracle數據庫 – wilburr 2013-02-12 02:07:55

回答

1

號在數據庫中,讓你的號碼添加到日期,數量以天計。

要添加的值是8/24.0 - 包括小數位,因爲一些數據庫計算8/24爲整數,給你0

+0

工作正常,謝謝! – wilburr 2013-02-12 02:20:14

+0

8/24也可以正常工作。 – 2013-02-12 03:43:15

1

不,+ 8添加8 。你想要:

select * from pat_results where app_type like 'L' and datediff(hour, chart_dt_utc, perform_dt_utc) > 8 

編輯:哦。出於某種原因,我以爲你在使用SQL服務器。好吧,可以說,使用RDBMS中存在的任何等價物。

編輯2:在Oracle中,你可以這樣做:

select * from pat_results where app_type like 'L' 
    and (chart_dt_utc > perform_dt_utc + (8/24)) 
+0

它是Oracle的datediff返回的ORA-00904:「DATEDIFF」:無效的標識符。 – wilburr 2013-02-12 02:10:12