选择mysql datetime字段的特定小时

时间:2017-01-22 21:21:47

标签: mysql

我想知道在使用datetime字段类型时是否有更准确/更正的方法来选择给定日期的特定小时。

这就是我目前正在使用的,只是想知道是否有更好或更正确的方法来执行此sql语句:

  

SELECT ID FROM table WHERE DATE(SomeDateTimeStamp)= CURDATE()AND HOUR(SomeDateTimeStamp)=' 11'

在那种情况下,我正在检查上午11点,显然。

在没有检查DATE()并检查HOUR()的情况下,一直在寻找一种方法来做到这一点,但到目前为止还没有运气找到方法。是否存在,或者这是最好的解决方法?

我正在运行mysql 5.7.16

1 个答案:

答案 0 :(得分:1)

要检查特定的日期和时间,您可以

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

可以使用索引。