title: Which is a better database schema for a tracking tool?
body: <p>I have to generate a view that shows tracking across each month.  The ultimate view will be something like this:</p>
  
  <p>| Person | Task | Jan | Feb | Mar| Apr | May | June . . .<br>
  | Joe | Roof Work | 100% | 50% | 50% | 25% |<br>
  | Joe | Basement Work | 0% | 50% | 50% | 75% |<br>
  | Tom | Basement Work | 100% | 100% | 100% | 100% |</p>
  
  <p>I already have the following tables:</p>
  
  <ol>
  <li>Person</li>
  <li>Task</li>
  </ol>
  
  <p>I am now creating a new table to foreign key into the above 2 tables and i am trying to figure out the pros and cons of creating 1 or 2 tables.</p>
  
  <h2>Option 1:</h2>
  
  <p>Create a new table with the following Columns:</p>
  
  <ol>
  <li>Id</li>
  <li>PersonId</li>
  <li>TaskId</li>
  <li>Jan2012</li>
  <li>Feb2012</li>
  <li>Mar2012</li>
  <li>Apr2013</li>
  </ol>
  
  <p>or</p>
  
  <h2>Option 2:</h2>
  
  <p>have 2 seperate tables</p>
  
  <p>One table for just</p>
  
  <ol>
  <li>Id</li>
  <li>PersonId</li>
  <li>TaskId</li>
  </ol>
  
  <p>and another table for just the following columns</p>
  
  <ol>
  <li>Id</li>
  <li>PersonTaskId  (the id from table above)</li>
  <li>MonthYearKey</li>
  <li>MonthYearValue</li>
  </ol>
  
  <p>So an example record would be</p>
  
  <p>| 1 | 13 | Jan2011 | 100% |</p>
  
  <p>where 13 would represent a specific unique Person and Task combination.  This second way would avoid having to create new columns to continue over time (which seems right) but i also want to avoid overkill.</p>
  
  <p>which would be a more scalable way to have this schema. Also, any other suggestions or more elegant ways of doing this would be great as well?</p>