title: Data structure/model of score keeping app for games (avoiding many-to-many-to-many)
body: <p>I'm exploring a simple score-keeping app for playing the card game Rummy just as an exercise. I'm building it for iOS, but that is kind of irrelevant as it uses a SQLite data store so the data structure is applicable in any environment. Let me setup a use-case:</p>
  
  <p>To start keeping score, you first set up your players. I'd like it to be possible to persist players so you can track stats and such. So, you either create new players or select existing.</p>
  
  <p>Then, as you play, you add rounds with scores for each player.</p>
  
  <p>When finished the game, players, and scores are all saved so you can view a log of past games.</p>
  
  <p>The issue I'm running into is that a player can play many games, which have many rounds. But, when viewing a game, it has many rounds, with each round having many players (to display their scores).</p>
  
  <p>Building an ERD for this shows how out-of-hand my perception of this data structure will be.</p>
  
  <p><img src="https://i.stack.imgur.com/2zSqM.png" alt="Silly ERD"></p>
  
  <p>It seems like I'm spinning in circles. Are there any examples of structuring this data, or can anyone show me where I'm getting off track?</p>