title: Databases: How to store a date unknown vs date that hasn't occurred yet
body: <p>I have a table in MySQL with a field of type <code>DATE</code> for storing some dates, and I have another table in which I have a field of type <code>SMALLINT</code> for storing only a year.</p>
  
  <p>Now I need to differentiate between a date (or a year) that is simply unknown from a date (or a year) that hasn't occurred yet. It's pretty straightforward that unknown values should be <code>NULL</code>. But is there any recommendation as to what value to use to store dates that haven't yet occurred with the types I mentioned?</p>
  
  <p>I'm quite sure that no dates / years before 1000 will ever be used, so I could use e.g. <code>0000-01-01</code>. Is there any better / recommended solution?</p>
  
  <p><strong>EDIT</strong> Just read that for the <code>DATE</code> type "The supported range is '1000-01-01' to '9999-12-31'." So I would have to use <code>1000-01-01</code> instead of <code>0000-01-01</code>.</p>