如何设计团队与游戏的关系?

How to design a relationship between team and game?

我想出了两个选项来关联数据库中的球队和比赛;哪个最合适?

我试图让它变得简单,这就是我想要的。 Teams 有很多 games,每个 game 有一个 home team 和一个 away team。这是多对多的关系。

这是我的想法:

我不确定我是否应该在 competes table 中放置一个名为 ishomeboolean 字段,或者添加两个名为 home_id 和 [= 的字段19=],并将它们设置为 foreign 键以引用 team.id,如下图所示。

如果您总是有 2 支球队互相比赛,您可以使用

competes table
--------------
home_team_id
away_team_id
game_id

就像你的第二个选项。但是,如果您在一场比赛中拥有动态数量的球队,则使用其他球队。