SQL Server,查找外键列的总和
问题描述:
我目前有3个表。SQL Server,查找外键列的总和
表1:客户
id(PK) name surname
----------------------------------
1 name1 surname1
2 name2 surname2
3 name3 surname3
4 name4 surname4
表2:销售
id(FK) game(FK) price(FK)
-----------------------------
1 1 1
2 4 4
3 4 4
4 3 3
1 3 3
2 3 3
3 2 2
表3:股票
id(FK) game price
-----------------------------
1 game1 20
2 game2 30
3 game3 40
4 game4 50
什么我希望做的是找到所有的总和销售表中列出的销售额(表2)。
到目前为止,我可以显示一张表,显示每款游戏总共赚了多少钱,但无法获得显示的总销售额。
我已经试过
select sum(sales.price)
from sold
然而,这仅仅是计算外键的总和(在这种情况下,这将是20)。但是,我希望它显示270.
答
您需要加入库存和销售表以获得每个销售项目的正确价格。
Select sum(stock.price) from sales
inner join stock on sales.game = stock.id