从具有多个条件的第二张表更新临时表以排序到MySQL中的正确记录

时间:2019-02-14 20:13:00

标签: mysql

简而言之,我正在尝试管理一支车队。我有一个临时的车辆表,我正在尝试使用车辆时数表来更新小时数和来源。这是一对多的关系。

我只想从最近的几个小时开始算。我也有多个来源,并想确定特定来源的优先级。在MySQL中有有效的方法吗?

以下代码段有望帮助您指出我要尝试做的事情。

UPDATE tempVehicle
    LEFT JOIN
    (SELECT VehicleHours.Hours, 
            VehicleHours.Source
    FROM VehicleHours
    ORDER BY VehicleHours.Date DESC,
        FIELD(VehicleHours, 'Priority', 'Non-priority')) VehicleHours
    ON VehicleHours.Vehicle_Id = tempVehicle.Id
    SET tempVehicle.Hours = IFNULL(VehicleHours.Hours, 0.0),
        tempVehicle.HoursSource = VehicleHours.Source

谢谢!

0 个答案:

没有答案