2012-03-19 121 views
1

使用PHP特定的時間,我有一個SQL查詢,工作正常,dateentry只有作爲2012-03-20SQL比較日期和

"SELECT dateentry FROM mytable WHERE dateentry >= DATE(CURDATE()) ORDER BY navDisplayNum ASC;" enter code here 

日期等,但我希望時間添加到我的查詢,以便分貝進入+ 8點是相對於當前日期+時間
任何人都可以伸出援助之手如何妥善處理這一問題,請

"SELECT dateentry FROM mytable WHERE dateentry"." 8:00:00"." >= DATE(NOW()) ORDER BY navDisplayNum ASC;" 

這種企圖將產生錯誤
「你有一個錯誤你的SQL語法;檢查與您的MySQL服務器版本相對應的手冊,以在'8:00:00> = DATE(NOW())ORDER BY navDisplayNum ASC'附近使用正確的語法。「

+0

是什麼類型'dateentry' – zerkms 2012-03-19 03:11:42

+1

'日期(CURDATE())'是完全多餘的。curdate已經返回一個日期值。 – 2012-03-19 03:13:12

+0

@zerkms dateentry is DATE – 2012-03-19 03:14:07

回答

3

爲了給現有日期,使用DATE_ADD功能只是把時間旁邊的一個現有的日期將無法正常工作

看看:?

SELECT dateentry FROM mytable WHERE DATE_ADD(dateentry, INTERVAL 8 hour) >= NOW(); 
+0

是否可以將DAY_ADD與INTERVAL 1DAY和8 HOUR結合使用? – 2012-03-19 03:41:16

+0

@tq:看看手冊,它包含了這個問題的答案。 – 2012-03-19 03:48:24