我有一个查询,应该选择日期之间的所有预订
SELECT t1.*, treatment.treatmentName,
t2.userForename, t2.userSurname,
t3.userForename as clientForename, t3.userSurname as clientSurname, t3.userPost as clientPost, t3.userAd1 as clientAd1,
t4.userForename as createdForename, t4.userSurname as createdSurname
FROM booking t1
INNER JOIN treatment ON t1.idtreatment = treatment.idtreatment
INNER JOIN user t2 ON t2.iduser = t1.idstylist
INNER JOIN user t3 ON t3.iduser = t1.iduser
INNER JOIN user t4 ON t4.iduser = t1.bookingCreatedBy
WHERE
t1.bookingDate>=%s AND t1.bookingDate<=%s)
ORDER BY t1.bookingDate ASC, t1.bookingSTime ASC, t1.idtreatment ASC
如果我像这样向查询传递开始和结束日期......
SELECT t1.*, treatment.treatmentName,
t2.userForename, t2.userSurname,
t3.userForename as clientForename, t3.userSurname as clientSurname, t3.userPost as clientPost, t3.userAd1 as clientAd1,
t4.userForename as createdForename, t4.userSurname as createdSurname
FROM booking t1
INNER JOIN treatment ON t1.idtreatment = treatment.idtreatment
INNER JOIN user t2 ON t2.iduser = t1.idstylist
INNER JOIN user t3 ON t3.iduser = t1.iduser
INNER JOIN user t4 ON t4.iduser = t1.bookingCreatedBy
WHERE t1.bookingDate>='2017-01-01' AND t1.bookingDate<='2017-01-07'
ORDER BY t1.bookingDate ASC, t1.bookingSTime ASC, t1.idtreatment ASC
如果我回显返回的每一行的日期,它似乎会返回超出该范围的结果。例如我正在进入我的结果集...
2016年7月9日、2016年7月9日、2016年9月26日、2016年9月7日、2016年7月9日、2017年1月5日、2016年7月9日、2016年9月20日, 07/09/2016
正如您所看到的,在我返回的数组中实际上只有一个是正确的。
最佳答案
想一想,当您说日期错误时,您显示的是哪个日期列?
确保它是t1.bookingDate
关于php 选择特定日期及其之间的所有预订,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41523734/