作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的问题是如何从堆叠在两个日期之间的表中获取所有行。
这是我的查询:
$sql = "SELECT cars.brand,cars.model,cars.reg_num,cars.horse_powers,cars.color FROM cars INNER JOIN clients_cars ON cars.id=clients_cars.cars_id WHERE cars.id IN
(SELECT DISTINCT clients_cars.cars_id FROM clients_cars WHERE (rent_date between '$d1' AND '$d2') AND (return_date between '$d1' AND '$d2') AND ((return_date > '$d1') OR (rent_date < '$d2')))";
这是有效的,但它只完成了我希望的一半。
这是我的 table :
我想显示在两个日期之间租用的所有汽车,即使其中一个日期与另一个日期重叠而另一个日期不重叠。
例如,我添加了 2014-12-04 和 2014-12-13,它只显示了 id=5 的汽车。它应该向我显示 id=8 的汽车,因为它已经在 2014-12-02 租用并将在 2014-12-06 归还并且应该向我显示 id=2 的汽车,因为该汽车将从 2014-12- 10 他一直在找车,直到 2014-12-13...
我希望你能理解我。我需要一些帮助 :)
最佳答案
试试这个 sql:
$sql = "SELECT cars.brand,cars.model,cars.reg_num,cars.horse_powers,cars.color FROM cars LEFT JOIN clients_cars ON cars.id=clients_cars.cars_id
WHERE (rent_date between '$d1' AND '$d2') OR (return_date between '$d1' AND '$d2')";
关于php - 如何从两个日期之间堆叠的表中获取所有行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27270997/
我是一名优秀的程序员,十分优秀!