SQL选择记录

时间:2013-04-04 22:56:03

标签: sql

我很困惑从我的桌子中选择汽车可用性,因为我想列出给定分支中的所有可用车辆 我写了这个查询,但我的脑子坚持继续!?

SELECT MODEL, MAKE, START_DATE, TERMINATION_DATE

FROM VEHICLE_TYPE, VEHICLE, HIRE_AGREEMENT

WHERE VEHICLE_TYPE.VEHICLE_TYPE_ NUN = VEHICLE. VEHICLE_TYPE_NO

AND VEHICLE.VEHICLE_REG_NUM = HIRE_AGREEMENT.VEHICLE_REG_NO
AND ;

我相信从start_date和termination_date我可以获得汽车可用性但是如何?

2 个答案:

答案 0 :(得分:0)

如果我理解正确,这样的事情应该有效:

SELECT MODEL, MAKE, START_DATE, TERMINATION_DATE
FROM VEHICLE_TYPE, VEHICLE, HIRE_AGREEMENT
WHERE VEHICLE_TYPE.VEHICLE_TYPE_ NUN = VEHICLE. VEHICLE_TYPE_NO
AND VEHICLE.VEHICLE_REG_NUM = HIRE_AGREEMENT.VEHICLE_REG_NO
AND GETDATE() BETWEEN VEHICLE.START_DATE AND VEHICLE.TERMINATION_DATE

应返回截至当前日期的所有可用车辆

答案 1 :(得分:0)

首先,你应该加入而不是那些旧学校的东西。根据您提供的信息,我可以建议这样的事情。

 SELECT Vehicle.Model, Vehicle.Make, Hire_Agreement.Start_Date,  
  Hire_Agreement.termination_date  FROM Vehicle 
    NATURAL INNER JOIN Hire_Agreement 
     WHERE 
  Hire_agreement.terminationDate >= Date() AND Hire_agreement.start_date <= Date();

考虑到你没有给我们你的架构或SQL风格,这就是我所能做的。