我的数据库记录如下所示,我想使用sql来获取每天一段时间内的记录。
比如我想在下面的记录中得到01:00 - 03:00,我希望得到2004/8/7 01:542004/8/11 02:41,我应该怎么做?谢谢:)

2004/8/7 01:54
2004/8/7 16:44
2004/8/7 22:26
2004/8/9 16:26
2004/8/9 16:26
2004/8/9 18:36
2004/8/9 18:36
2004/8/9 18:36
2004/8/9 18:36
2004/8/10 23:22
2004/8/10 23:23
2004/8/11 02:41
2004/8/12 21:05

最佳答案

HOUR()函数提供一天中的小时数。剩下的很简单:

select * from mytable
where (hour(datetime_column) between 1 and 2
  or (hour(datetime_column) = 3
    and minute(datetime_column) = 0
    and second(datetime_column) = 0))

编辑:
注意hour(datetime_column) between 1 and 2匹配... 01:00:00... 02:59:59,其余匹配剩余的一秒-正好03:00:00

关于mysql - 一段时间之间如何使sql?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10534350/

10-11 12:07