SQL在项目级别找到折扣

时间:2015-04-08 09:49:58

标签: mysql sql join

我使用MySQL 我有一个订单表:

Order  |  Items | Discount

+++++++++++++++++

A      |   04 | 10 

表:

Order | Items | Discount

+++++++++++++++++++

A  | 02 |

A  | 01 |  

A  | 01 |

我需要找到每件商品的折扣。 这将是

2/4 * 10  = 5 for 1st item
1/4 * 10  = 2.5 for 2nd item
1/4 * 10  = 2.5 for 3rd item

需要在物品表上计算和保存折扣。

2 个答案:

答案 0 :(得分:0)

好的,基于您的评论,您正在寻找类似的内容:

UPDATE Items SET Discount = (SELECT ((I.Items/O.Items) * O.Discount) FROM
    Order O JOIN Items I ON O.Order = Items.Order WHERE O.Order = 'A')
    WHERE Items.Order = 'A';

答案 1 :(得分:0)

如果没有用于定义排序的属性(或方法),则无法应用将订单用作参数并获得一致结果的转换。