Die Tabelle Squad
sollte eine Verknüpfungstabelle sein, die eine Beziehung zwischen Players
und Team
erstellt. Da jede Kombination Player/Team nur einmal vorkommen kann, sollten beide Spalten Team_ID
und Player_ID
Teil des Primärschlüssels sein.
Squad
sollte auf der n-Seite von zwei Beziehungen sein. Sein Name sollte wahrscheinlich etwas wie Membership
sein.
Warum brauchen Sie einen separaten PlayerStatistics
Tisch? Anscheinend speichert es Statistiken für die gleichen Player_ID/Team_ID-Kombinationen wie Squad
. Die Felder dieser Tabelle sollten in die Tabelle Squad
gehen.
Sollte nicht die Positions
per Mitgliedschaft sein? Eine Position pro Mitgliedschaft, d.h. ein Spieler hat eine definierte Position in jeder Mannschaft, in welchem Fall Position_ID
eine Spalte in Squad
sein sollte.
sollten zwei Beziehungen werden zwischen Team
und MatchStatistics
. Eine auf Home_team_ID
und eine auf Away_team_ID
.
Alternativ könnten Sie die PlayerStatistics
-Player
und Match
und damit speichern assoziieren, was jeder Spieler in jedem einzelnen Spiel getan hat. Sie würden dann die Gesamtstatistik des Spielers oder die Spieler-pro-Team-Statistiken durch entsprechende Abfragen abrufen.
Was passiert, wenn ein Spieler mehrere Positionen spielen kann? – VikingBlooded
@NathanHughes Eigentlich erlaubt "Squad" nur eine Zeile pro Team – Lamak
Die große Frage ist, was sind Ihre Bedürfnisse. Fußballstatistiken können sehr detailliert sein und nur Spielstände enthalten. Ihr Diagramm scheint nicht mit Spielern zu funktionieren, die Teams oder Positionen wechseln, oder Spieler, die eine andere Position spielen als die, an die sie gewöhnt sind, usw. '. Ich habe in der Vergangenheit an einer Fußballstatistik-Anwendung gearbeitet, meine Datenbank war weit, viel aufwendiger als diese. –