从带有外键的3个表中选择Query

时间:2013-08-06 13:10:58

标签: sql sql-server subquery foreign-key-relationship

我有3个彼此有外键的表。 我想编写一个SQL Server存储过程来从其中一个中选择记录。

My tables

现在,让我们假设我想要所有Winner记录引用玩家记录引用ID为2的游戏,我该如何进行?

谢谢。

2 个答案:

答案 0 :(得分:8)

您已指定所有获胜者记录因此我已将左连接用于玩家和游戏。但整体代码根据where条件工作。

试试这个,

select w.* from Winner w
left Join Player p on p.ID_player = w.player_FK
left join Game g on g.ID_game = p.Game_FK
where  Game.ID_game = 2

答案 1 :(得分:3)

您需要使用SELECTINNER JOIN然后过滤GameID 2,您可以使用WHERE子句。

SELECT ID_Winner, Name, Lastname, Player_FK
FROM Winner
INNER JOIN Player on Player.ID_Pplayer = Winner.Player_FK
INNER JOIN Game ON Game.ID_game = Player.Game_FK
WHERE Game.ID_game = 2