mysql - 如何使用 MySql 根据时间间隔获取 id
问题描述
我想根据时间间隔获取 cubbersId
这是我的表:表名cubbersavailability
+---------------------------------------+
|cubbersId | fromTime | toTime |
+---------------------------------------+
| 1 | 09:30:00 | 18:30:00 |
| 1 | 09:30:00 | 18:30:00 |
| 1 | 09:30:00 | 18:30:00 |
| 1 | 09:30:00 | 12:30:00 |
+----------------------------------------+
在上表中 cubbersIsd 有一些时间。
条件
- 如果我选择
fromTime
as10:30:00
和toTime
as12:00:00
意味着获取最后 1 列 - 如果我选择
fromTime
as08:30:00
和toTime
as16:00:00
表示不选择列 - 如果我选择
fromTime
as10:30:00
和toTime
as20:00:00
表示不选择列 - 如果我选择
fromTime
as08:30:00
和toTime
as20:00:00
表示不选择列
我试过这个查询,但这不支持:
SELECT
c.cubbersId,
shopAvailTime.fromTime,
shopAvailTime.toTime
FROM cubbers c
LEFT JOIN
(SELECT * FROM cubbersavailability ca WHERE CAST('08:30:00' as time) < ca.toTime AND CAST('12:00:00' as time) > ca.fromTime ) as shopAvailTime ON (c.cubbersId = shopAvailTime.cubbersId)
WHERE c.cubbersId = 1
注意:这个问题已经问过了,但这对我的问题没有帮助;
解决方案
SELECT x.cubbersId
, x.fromTime
, x.toTime
FROM cubbersavailability x
WHERE '08:30:00' >= x.fromTime
AND '12:00:00' <= x.toTime
AND x.cubbersId = 1
推荐阅读
- android - 如何使用tinymce删除Android中的灰色覆盖
- c# - 访问 C# 中的每个类元素
- java - 尝试在“R 中的 id”中添加符号时出现 IDE 错误
- php - 如何使特色图像/缩略图具有响应性?
- python - 如何删除数据框中间隔之间的值
- spring - 如何从 Mono 平面图中获取 Flux?
- java - JAVA:如何以低内存占用写入 .xlsx
- ubuntu - CMake 在简单的测试程序上失败
- reactjs - TypeError:尝试在 Firefox 中的 POST 期间获取资源时出现 NetworkError
- ffmpeg - FFMPEG 将音轨合并为一个并使用 NVENC 进行编码