如何在特定时间之间查询数据,无论其日期如何?

时间:2015-12-14 10:34:34

标签: mysql

我有一个名为 event 的MySQL表来记录整个月的数据,它有一个名为 EventTime 的列来记录每个列写入数据库的时间。

我是否可以查询特定时间范围内的数据,无论其日期如何? 对于Instance,我想在12:00和18:00之间查询数据,然后它可以返回在整个月的时间范围之间发生的所有数据?

我相信我可以在我的C#代码中使用for循环来完成它,但我想知道我可以使用任何SQL命令吗?

2 个答案:

答案 0 :(得分:1)

您将列转换为TIME并查询它。 例如:

select time(event_time) from events where time(event_time) BETWEEN '10:00' and '11:00'

这种方法的缺点是DB不会在event_time上使用任何索引(除非您按时创建基于函数的索引(event_time))

答案 1 :(得分:0)

您可以在此处使用时间函数是Date and Time Functions

的完整详细信息
-- it will pull all records within current Month i.e December Now and given Time Range.
    Select Time(EventTime) from event where MONTH(EventTime) = Month(Current_Date) and  time(EventTime) BETWEEN '12:00' and '18:00'