基本上,我试图找到一种方法来更新与client_drivers_license_number相关联的车辆预订状态,因为它与我将在laravel项目(下面的123456789)上输入的变量相匹配。我不确定如何与多个表匹配的值进行更新,所以我最好的尝试是下面,所以我可以解释我想做什么的想法。
UPDATE SET vehicle.is_booked = 0
FROM booking, vehicle
WHERE booking.vehicle_rego = vehicle.rego and booking.client_drivers_license_number = 123456789;
谢谢你的帮助。
您可以使用exists
:
UPDATE vehicle
SET is_booked = 0
WHERE EXISTS (SELECT 1
FROM booking b
WHERE b.vehicle_rego = vehicle.rego AND
b.client_drivers_license_number = 123456789
);
当booking
可用时,您将设置is_booked = 0
似乎很奇怪。但话说回来,这个查询中根本没有日期或时间似乎很奇怪。