2017-04-12 49 views
0

我目前有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.

回答

0

您需要加入库存和销售表以获得每个销售项目的正确价格。

Select sum(stock.price) from sales 
inner join stock on sales.game = stock.id