在日期之间查询

时间:2016-12-12 21:11:44

标签: sql database ms-access-2016

我之前提出过一个问题,并且很好地解决了其中的一部分问题。由于某种原因,它没有显示我的查询日期。只是我在参数中输入的日期。我想知道是否有人可以看到代码有任何问题。任何帮助深表感谢。

Relationships

 SELECT * 
 FROM Vehicles
 WHERE Vehicles.vehicle_id NOT IN (
 SELECT Booking.[vehicle id]
 FROM Booking
 WHERE (
    [Enter Start Date] BETWEEN booking.start_rent_date
        AND booking.end_rent_date
    )
 OR (
    [Enter End Date] BETWEEN booking.start_rent_date
        AND booking.end_rent_date
    )
 );

enter image description here

1 个答案:

答案 0 :(得分:0)

假设[输入结束日期]大于[输入开始日期]。

首先,尝试这个单一查询是否正常工作:

SELECT Booking.*
FROM Booking
WHERE (((Booking.start_rent_date)>#2016/11/1#) 
      AND ((Booking.end_rent_date)<#2016/11/20#));

其次,尝试加入不同的值:

SELECT * 
FROM Vehicles
WHERE Vehicles.vehicle_id NOT IN 
            (
            SELECT distinct Booking.[vehicle id]
            FROM Booking
            WHERE (((Booking.start_rent_date)>#2016/11/1#) 
            AND ((Booking.end_rent_date)<#2016/11/20#))
            );