2017-01-22 113 views
0

我想知道是否有更準確/正確的方法來選擇使用datetime字段類型的給定日期的特定小時。選擇mysql日期時間字段的特定小時

這是我目前使用的,只是不知道是否有這樣的SQL語句的更好或更正確方法:

FROM表

SELECT ID WHERE DATE(SomeDateTimeStamp)= CURDATE()和小時(SomeDateTimeStamp)='11'

在這種情況下,我顯然在檢查上午11點。

一直在尋找一種方法來做到這一點,而不做檢查DATE()和檢查HOUR()但迄今沒有運氣找到一種方法。有沒有,或者這會是最好的方式去做這件事?

我運行MySQL 16年7月5日

回答

1

要檢查特定的日期和時間,你可以做

SELECT ID 
FROM table 
WHERE SomeDateTimeStamp >= '2017-01-22 11:00:00' 
    AND SomeDateTimeStamp < '2017-01-22 12:00:00' 

其中可利用索引。

+0

這比使用'DATE()'和'HOUR()'更好的方式嗎?還是隻是建議一種替代方法? – Abela

+0

它更快,我會怎麼做。 –

相關問題