title: What is the most optimised way to store this data?
body: <p>I am recording student results for various courses. Students attend various facilities and so they have various academic calendars. In other words, a student can have results in either:</p>
  
  <ul>
  <li>Yearly Results (One mark at the end of the year</li>
  <li>Semester Results (Two terms, mark at end of each and then the year)</li>
  <li>Trimester Results (Three terms, mark at the end of each and then the year)</li>
  <li>Terms Results (Four terms, mark at the end of each and then the year)</li>
  </ul>
  
  <p>So, should I store the data as a csv string and explode it then make any calculations to the data, etc:</p>
  
  <pre><code>year_results str
  year_end tinyint
  </code></pre>
  
  <p>or just store it as I need it/as it is and have a bunch of null values for the types not required</p>
  
  <pre><code>semester_1 tinyint
  semester_2 tinyint
  trimester_1 tinyint
  trimester_2 tinyint
  trimester_3 tinyint
  term_1 tinyint
  term_2 tinyint
  term_3 tinyint
  term_4 tinyint
  year_end tinyint
  </code></pre>
  
  <p>Advantages / disadvantages of both?</p>