【问题标题】:get time slot row from given time in mysql从mysql中的给定时间获取时隙行
【发布时间】:2014-05-23 13:01:42
【问题描述】:

我有一个包含行 start_time 和 end_time 的表 time_slots

数据是

id start_time       end_time
1  10:00:00         15:00:00 
2  15:00:00         22:00:00 
3  22:00:00         10:00:00 

我使用的查询对前两列效果很好

SELECT * FROM time_slots WHERE '18:00:00' BETWEEN start_time AND end_time

但是当我尝试从第三行获取行时,它给了我一个空的结果。

【问题讨论】:

  • 这是因为你的mysql不知道22:00:00属于哪个日期,10:00:00属于哪个日期,因此无法确定18:00:00属于哪个日期。

标签: mysql timeslots


【解决方案1】:

嗯,

22:00 多于 10:00。因此,您的 where 子句可以完美执行。

我了解您的问题,但我不知道如何在 T-SQL 中解决它... :)

我能想到的一个解决方法是将 TIME 字段更改为 DATETIME; BETWEEN 命令可以使用这些值

【讨论】:

    猜你喜欢
    • 2018-04-05
    • 2011-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-21
    • 2022-01-24
    相关资源
    最近更新 更多