尝试执行查询,但如果里程> 150,则需要向TotalCost添加250。

select milegae.dc_id,
mileage.store_id,
mileage.mileage,
round((mileage.mileage * .75 + 200),2) as TripCost
from mileage;


该查询为我提供了我想要的数据,但是我不确定如何在给定参数的情况下将250添加到TotalCost中。

最佳答案

您可以使用CASE EXPRESSION来做到这一点:

select milegae.dc_id,
    mileage.store_id,
    mileage.mileage,
    CASE WHEN mileage.mileage > 150
         THEN ROUND(((mileage.mileage+250) * .75 + 200),2)
         ELSE ROUND((mileage.mileage * .75 + 200),2)
    END as TripCost
from mileage;

关于mysql - MySQL查询将值添加到新列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40404070/

10-09 20:10