title: Database design for setting team schedules
body: <p>i'm Designing a sports tournament hosting website, and i have a basic database design set up, here is how it looks.
  (i'm even willing to have a bounty on this question)</p>
  
  <p><a href="https://i.stack.imgur.com/nTdaR.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/nTdaR.png" alt="enter image description here"></a></p>
  
  <ol>
  <li>'Asuming' admin table is the center of the database, there are two different roles for the admin <code>superadmin</code> and <code>admin</code></li>
  <li>The <code>superadmin</code> creates the <code>tournaments</code> </li>
  <li><code>superadmin</code> adds <code>teams</code></li>
  <li>each team will have an <code>admin</code></li>
  <li>the <code>admin</code> then adds <code>players</code> to the specific teams that he's incharge of</li>
  <li><code>superadmin</code> then creates <code>schedules</code> for the teams</li>
  </ol>
  
  <p>lets say there are 20 teams and 20 admins and 100 players in the tounament
  what would be the database design for this and how would i optimize it for maximum flexibility, as i will state below, there will be future additions to these already present features. here is the basic work flow</p>
  
  <p><a href="https://i.stack.imgur.com/I9uJa.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/I9uJa.png" alt="enter image description here"></a></p>
  
  <h2>Some required features</h2>
  
  <ol>
  <li>Teams should be able to play in multiple tournaments at different schedules(schedules should not overlap)</li>
  <li>players should be able to play in multiple tounaments with different/same teams but <strong>never</strong> on multiple teams belonging to the same tournament</li>
  <li>Teams should be able to play in multiple tournaments</li>
  </ol>
  
  <h2>The future additions</h2>
  
  <ol>
  <li>the teams will be divided into pools/groups</li>
  <li>some teams will play against other teams <strong>within</strong> the group </li>
  <li>some teams will play against other teams in <strong>other</strong> groups</li>
  </ol>
  
  <h2>Summarizing the question</h2>
  
  <ul>
  <li>what would be the database design for the required features that i
  mentioned</li>
  <li>how would i plan for and accomodate the future additions right now</li>
  <li>im looking for purely database design and best methodology</li>
  </ul>