查询以检查是否类是在特定时间日期已经保留

问题描述:

工艺以限定训练/类时间表:查询以检查是否类是在特定时间日期已经保留

当用户进入ClassStartTime和ClassEndTime例如07:20至08:00(以相同格式存储在db中的定时)

如果请求的定时没有被保留/预订,它将如何检查数据库表。

在db中,特定日期的条目 例如2013年2月14日也可能会被

ClassStartTime 06:00 ClassEndTime 06:40

ClassStartTime 07:00 ClassEndTime 08:00

它会在表

1 ClassId int(11)   
2 ProviderId int(11)   
3 ClassName varchar(25) 
4 ClassDayName varchar(3) 
5 ClassAppointmentDate date 
6 ClassStartTime varchar(10) 
7 ClassEndTime varchar(10) 
8 ClassOccurence varchar(6) 
9 ClassEndOccurence varchar(10) 
10 ClassAfterDaysOccurence int(4) 
11 ClassAfterDateOccurence date 
12 ClassRecurrenceSetting varchar(7) 
13 ClassFee double 
14 cla*acity int(4) 
15 ClassAllowWaiting int(1) 
16 ClassPaymentMode varchar(6) 
17 Location varchar(100) 
+0

什么时候认为课程是保留的?你是否还有一个StudentClass表以及已经注册了学生的StudentClass表 - 用这个表来反对Cla*acity? – sgeddes 2013-02-14 19:00:57

+0

所以学生选择一个他们想要上课的时间,系统会试图找到一个属于该范围的预定课程?例如“我想在上午10点篮球101”? – 2013-02-14 19:02:48

+0

我在问题中解释的日期得到保留的时间,但我只需要检查用户输入的时间是否在这些记录的时间之间(与特定日期相比) – Bilal 2013-02-14 19:04:28

检查MySQL,this'd work:

SELECT ... 
... 
WHERE '10:00' BETWEEN ClassStartTime AND ClassEndTime 

给出“Basketweaving 101 at 10am”。

当然,如果您在这些字段中存储时间,您最好将其转换为MySQL time字段。否则,你最终会做字符串比较,这可能会失败。