0

我有 3 个相互引用的表格。联赛、球队和球员。

联赛有leagueid,leaguename,city
球队有teamid,teamname,numberofplayers,leagueid(fk)
玩家有playid,playername,position,teamid(fk)

如何显示诸如 Players 之类的表格以显示所有内容并使用 teamid 外键显示他们的团队名称而不是该列?

4

3 回答 3

0
SELECT Players.*, teamname
FROM Players JOIN Teams USING (teamid)

您只需要加入teamid两个表之间匹配的列。

于 2013-03-12T01:54:58.953 回答
0

您需要加入两个表使用INNER JOIN.

SELECT a.*, b.*
FROM   Players a
       INNER JOIN Teams b 
          ON a.teamid = b.teamid

要进一步了解有关联接的更多信息,请访问以下链接:

于 2013-03-12T01:55:51.250 回答
0

通过使用内连接

    SELECT  b.teamname,a.playername, a.position
       FROM   Players a
         INNER JOIN Teams b 
            ON a.teamid = b.teamid

如果您指定联赛,

  SELECT c.leaguename, c.city ,d.* FROM
    (SELECT  b.teamname,a.playername, a.position
       FROM   Players a
         INNER JOIN Teams b 
            ON a.teamid = b.teamid) d
            INNER JOIN Leagues c
                ON d.leagueid= c.leagueid
于 2013-03-12T02:15:11.787 回答