我有两个表,分别是booking和CurrentDay_Booking。
**booking**:
ID bookingdate TableID starttime endtime userID NumberOfPeople phoneNumber EmailID
1 2015-11-20 1 11:15:00 11:55:00 john 2 21029917 gmail.com
2 2015-11-20 1 11:15:00 11:40:00 riyas 2 21029917 gmail.com
3 2015-11-20 1 12:15:00 12:45:00 riyas 2 21029917 gmail.com
4 2015-11-21 2 11:20:00 11:30:00 riyas 2 21029917 gmail.com
**CurrentDay_Booking**:
ID bookingdate TableID starttime endtime userID NumberOfPeople phoneNumber EmailID
1 2015-11-20 1 11:15:00 11:55:00 john 2 21029917 gmail.com
我的问题是:需要将预订表中的数据放到CurrentDay_Booking上,而不是CurrentDay_Booking ID上,而不是将当前日期,开始时间和结束时间等同于或等同于当前时间
我得到了当前时间和当前日期,使用不同的查询
我不知道如何使用where子句和LEFT JOIN进行查询
这是我的查询:
SELECT
t.ID,
t.bookingdate,
t.TableID,
t.starttime,
t.endtime,
t.userID,
t.NumberOfPeople,
t.phoneNumber,
t.EmailID
FROM booking t
LEFT JOIN CurrentDay_Booking s
ON t.ID = s.ID
WHERE s.ID is null
and t.bookingdate='" . $cur_gmt_date . "'
and t.starttime <= '" . $cur_gmt_time24 . "'
and t.endtime => '" . $cur_gmt_time24 . "';
我认为我将条件置于错误的位置。
请任何人帮助,在此先多谢。
根据您的描述,由于在您描述的方案中添加了表,因此创建表没有任何意义。结果表是相同的,所以为什么不直接从包含特定日期所有预订的表中直接查询。不需要连接到另一个表,基于它是否已经存在
SELECT
t.ID,
t.bookingdate,
t.TableID,
t.starttime,
t.endtime,
t.userID,
t.NumberOfPeople,
t.phoneNumber,
t.EmailID
FROM
booking t
WHERE
t.bookingdate='" . $cur_gmt_date . "'
使用基于(bookingdate)的“ booking”表上的索引,就不必比较已有的内容。然后,您不必担心每天都要清理它,而只是开始新的一天。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句