MySQL:价格< 50,总和(价格+14)

时间:2017-08-21 15:28:30

标签: mysql if-statement sum case

我正在构建一个查询,如果它的价格低于50美元,它会自动将运费加到商品价格上;如果它的原始价格超过50,我会自动将运费加到运费上。我做了一些实验使用CASE,IF和SUM,但我不确定哪个是我需要的。

初​​始:

Stock_Number    Line Part_Number Q  T   Price
AAB_1074901519, AAB, 1074901519, 1, AM, 120.67
AAB_1074908119, AAB, 1074908119, 1, AM, 108.29
AAB_1264907619, AAB, 1264907619, 1, AM, 364.49
AAB_1294908319, AAB, 1294908319, 1, AM, 368.97
AAB_1378254,    AAB, 1378254,    1, AM, 36.18

所需:

AAB_1074901519, AAB, 1074901519, 1, AM, 144.67   //Because price > 50, +22
AAB_1074908119, AAB, 1074908119, 1, AM, 130.29   //Because price > 50, +22
AAB_1264907619, AAB, 1264907619, 1, AM, 386.49   //Because price > 50, +22
AAB_1294908319, AAB, 1294908319, 1, AM, 390.97   //Because price > 50, +22
AAB_1378254,    AAB, 1378254,    1, AM, 50.18   //Because price < 50, +14

Anil解决了我的问题。感谢大家的努力!

  

您可以使用案例陈述。这是查询。替换表名   和列名。

     

选择价格&lt; 50然后价格+运费其他价格结束   从你的桌子;

2 个答案:

答案 0 :(得分:1)

您可以使用案例陈述。这是查询。替换表名和列名。

select case when price < 50 then price + shipping cost else price end from your table;

答案 1 :(得分:0)

您可以使用此更新:

update table set price= case
when price<50 then price+shipping_fee1
else price+shipping_fee2 
end;