Gioco regolarmente un gioco 2v2 con 12 amici e voglio un database per tenere traccia di giocatori, squadre, punteggi e giochi, con l'intento di creare un sistema di classificazione.
Poiché cambiamo regolarmente team, ho creato tabelle players
, teams
e games
in cui i giochi hanno due squadre (squadra1 e squadra2) e le squadre sono composte da due giocatori (giocatore1 e giocatore2).
Questo causa alcuni problemi, ad esempio se prendo due giocatori (chiamiamoli A e B ) per giocare insieme, devo controllare se c'è già Esiste una squadra in cui Player1 è A e Player2 è B o Player1 è B e Player2 è A.
Le colonne games
e wins
sono presenti sia nella tabella players
che in teams
- ma questo perché voglio vedere sia il numero di giochi vinti dai giocatori, ma anche quanto sia compatibile il giocatore è in squadre diverse (quante volte un giocatore vince quando si unì con un altro giocatore specifico).
- Classifica tabellone (probabilmente userò il sistema di valutazione Elo )
- Una pagina di statistiche per ogni giocatore con valutazione, vittorie, giochi, statistiche recenti sui giochi e con quali giocatori è maggiormente compatibile.
Sospetto strongmente che gran parte di questo violi alcuni dei principi nella normalizzazione del database, e mi piacerebbe qualche suggerimento su come implementare la progettazione del mio database.