mysql - 一天之间两次

时间:2016-02-04 09:04:43

标签: mysql sql

MySQL行:

id  work_time_from  work_time_to
1   12:30           23:00
2   14:00           18:00

输入数据:

$curTime = 13:15

问题:

我必须获取相应条件的所有行 work_time_from < $ curTime<的 work_time_to

我的要求是:

SELECT * FROM companies WHERE work_time_from < "13:15" AND work_time_to > "13:15"

由于work_time_from,work_time_to varchar类型,我觉得它不起作用。

1 个答案:

答案 0 :(得分:2)

使用STR_TO_DATE转换字段,然后BETWEEN进行比较。

SELECT *
FROM yourtable
WHERE STR_TO_DATE(CURTIME(),'%h:%i') BETWEEN STR_TO_DATE(work_time_from,'%h:%i') AND STR_TO_DATE(work_time_to,'%h:%i')