我有一个场景,我希望能够从MySQL表中选择行,但排除当前时间在一定时间范围内的行。更正查询优化时间范围的MySQL结构?
示例: 一行的“安静”期限为晚上10点至上午8点30分。 如果当前服务器时间晚上10点或上午8点30分之前,我的SQL SELECT语句不应返回该行。
示例2:“安静期”为空并被忽略。
示例3:从上午9:53到上午9:55创建了一个安静的时间段。如果当前服务器时间在2分钟的窗口中,则该行不会被SELECT返回。
我的问题: 你会在数据库中使用什么数据格式,以及如何编写查询?
我想过几种不同的方法(将start_time定义为一列和另一个持续时间,以秒为单位定义......或使用日期戳......或其他)。没有一个看起来很理想,需要大量的计算。
谢谢!
你只需要每行的时间或者你还需要日期吗? – liquorvicar 2012-03-30 06:07:02
我不需要返回。我只是试图根据一天的时间进行过滤。我不在乎约会。与上面的示例一样:我想排除当前服务器时间在指定的“安静窗口”内的行。 – 2012-03-30 16:43:55