I'm leaving here, but think:
tblTeam TeamID TeamName . . . OtherTeamFields tblMatch MatchID MatchDate MatchLocationID . . . OtherMatchFields tblTeam_Matches TeamID FK on tblTeam.TeamID MatchID FK on tblMatchID TeamStanding (Win, Loss, Tie)
There are some pros and cons to the structure above. From the point of view of professionals, the result for each team participating in the match is correctly stored with the team's attitude to this match. You can get results for each team using a series of matches by setting the criteria for TeamID and TeamStanding (ie "WHERE TeamStanding =" Win ").
However, there is a more complex, but probably more scalable and useful way, in which you would define a TeamScore field for tblTeam_Matches. In this case, the winner of the match will be determined by a rather complicated series of subqueries (complicated, I mean, it's hard for me. I'm sure there are people here who could quickly jump out ... But this is a little brain teaser).
I believe that the second option would be a more “correct” way to do this, but I messed up a few options:
StatsQuery: TeamName TotalMatches Wins Losses Ties
It was hard for me. Correlated subqueries are NOT my forte (yet).
Anyway, hope this gives you some food for thought.,
source share