首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >mysql用于检查讲师在选定的时间是否可以上课

mysql用于检查讲师在选定的时间是否可以上课
EN

Stack Overflow用户
提问于 2018-06-29 09:03:28
回答 1查看 37关注 0票数 0

我有一个课程预订日历,我正在尝试检查讲师是否在给定的时间预订或有空。

我有下面的表格来保存lesson_registrations

代码语言:javascript
复制
| id | InstructorId | startTime    | endTime      |
|  1 | 2            | 201806271100 | 201806271200 |
|  2 | 2            | 201806271400 | 201806271500 |

因此,根据此表,讲师可用于从201806271200201806271400的课程,但当我运行以下查询时,它会将讲师标记为已预订。

代码语言:javascript
复制
SELECT * FROM lesson_registrations 
WHERE 
((startTime BETWEEN '201806271200' AND '201806271400' ) 
 OR (endTime BETWEEN '201806271200' AND '201806271400') 
 OR ('201806271200' BETWEEN startTime AND endTime) 
 OR ('201806271400' BETWEEN startTime AND endTime) ) 

我在这里做错了什么?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2018-06-29 09:23:32

我认为,因为between是包含的,所以语句捕获了201806271200作为endtime的记录。如果您运行以下命令,则不会得到显示有可用的课程的结果。

代码语言:javascript
复制
SELECT * FROM lesson_registrations
WHERE 
(startTime BETWEEN '201806271159' AND '201806271359' ) 

是的,1200作为结束时间,因此下一个的开始时间需要在1201内,或者结束时间需要在1159内,并且开始时间可以是1200

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51092971

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档