ID |ItemName| PriceOfUnit | NumberOfItems I bought |DateIBought|
1 | tea | 3 | 6 |15/11/2015 |
2 | coffee | 5 | 4 |16/11/2015 |
3 | tea | 3 | 10 |20/12/2015 |
4 | juice | 5 | 15 | 1/1/2016 |
5 | coffee | 5 | 5 | 15/3/2016 |
6 | water | 5 | 2 | 16/4/2016 |
Tsold包含我卖的物品
ID |ItemName| PriceOfUnit | NumberOfItems I sold |total sold $| PriceWhenBought|
1 | coffee | 7 | 6 | 30 | 5 |
2 | tea | 5 | 9 | 45 | 3 |
3 | coffee | 7 | 2 | 8 | 5 |
5 | juice | 6 | 11 | 55 | 5 |
如果我买了咖啡,单位的价格是5,那就是Tbought
现在我把咖啡卖了7个my profit = 7 - 5 = 2
我需要计算利润,所以我认为我可以从Tbought获得单位价格 - 而不是再次在Tsold中再次进行 - 并在Tsold表中计算我的利润,如上所示
我怎么能这样做?
答案 0 :(得分:0)
您可以通过创建一个连接ItemName
上的两个表的查询来执行此操作,然后您可以计算Profit: Tsold.PriceOfUnit - Tbought.PriceOfUnit
之类的字段。
但是有一个问题:"咖啡"在Tbought
中多次出现。如果查询不同,您的查询如何知道要使用哪个Tbought.PriceOfUnit
?
修改强>
然后你首先需要一个查询来计算每个项目的算术平均值,它看起来像这样:
SELECT ItemName, Sum([PriceOfUnit]) / Count(*) AS AvgPriceBought
FROM Tbought
GROUP BY ItemName
然后在ItemName上使用此查询加入Tsold,并添加如下查询字段:
Profit: Tsold.PriceOfUnit - QAvgBought.AvgPriceBought