【发布时间】:2014-08-18 07:55:29
【问题描述】:
我有三张桌子
类型(id,诽谤)
卧室(id、姓名、类型)
预订(id、姓名、诽谤、开始日期、结束日期、房间)
我想创建一个应用程序,您可以在其中获取两个日期之间的所有房间和预订。我有以下查询
$sql = 'SELECT r.id, r.name, r.start_date, r.end_date, r.libel, r.statut ,c.name as room, t.libel as type '
. 'FROM type t INNER JOIN Bedroom c ON t.id = c.type LEFT JOIN reservation r ON c.id = r.room'
. 'WHERE ( :start_date BETWEEN r.start_date AND r.end_date '
. ' OR :end_date BETWEEN r.start_date AND r.end_date'
. ' OR r.start_date BETWEEN :start_date AND :end_date'
. ' OR r.end_date BETWEEN :start_date AND :end_date) ORDER BY c.'.$orderColumn.' ASC';
但似乎房间是在 start_date 和 end_date 之间预订的。
【问题讨论】: