【发布时间】:2017-12-09 14:38:13
【问题描述】:
我是 php 和 sql 新手,无法编写查询。
我已经完成了一个显示/获取未租汽车的查询。 它看起来像这样:
SELECT c.*
FROM cars c
WHERE NOT EXISTS (
SELECT *
FROM reservations as r
WHERE r.car_id = c.id AND
(r.res_from <= '2017-12-08 02:53:59' AND r.res_to >= '2017-12.09 23:58:59') OR
(r.res_from <= '2017-12-08 23:59:59' AND r.res_to >= '2017-12.09 23:58:59') OR
(r.res_from >= '2017-12-08 23:59:59' AND r.res_to <= '2017-12.09 23:58:59')
);`
问题是:如何编写查询给定 from_date - to_date 的租车查询,并且用户/客户需要足够的积分(金钱)来租用指定的汽车。
link to my database http://sqlfiddle.com/#!9/170f7f4/5
我尝试过这样的事情。这是正确的方法吗?
SELECT * FROM cars as c, reservations as r, users as u,
WHERE HAVING c.id = r.car_id AND
r.user_id = u.user_id AND
(res_from <= '2017-12-08 02:53:59' AND r.res_to >= '2017-12-08 02:53:59') OR
(r.res_from >= '2017-12-08 23:59:59' AND r.res_to <= '2017-12-08 23:59:59' )
....接下来呢?
想要点击一辆车(如附图所示)然后选择租车日期。
【问题讨论】: