mysql - 一天两次之间

标签 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 类型。

最佳答案

使用 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')

关于mysql - 一天两次之间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35196672/

相关文章:

sql - AWS MS SQL 创建表

MySQL 搜索查询,按最佳匹配对结果进行排序

php - 使用 MySQL 的准备语句不将 POST 值插入数据库表

php - 在 PHP/SQL 中选择数据库

SQL Server : how to know if any row is referencing the row to delete

sql - 使用 switch-case 语句更新 T-SQL

mysql - 重复插入不保存

MySQL - 左连接正式优于右连接?

php - 如何验证数据库中是否存在重复记录?

MySQL Blob 与磁盘( "video frames")