title: SQL - Select next date query
body: <p>I have a table with many IDs and many dates associated with each ID, and even a few IDs with no date.  For each ID and date combination, I want to select the ID, date, and the next largest date also associated with that same ID, or null as next date if none exists.</p>
  
  <p>Sample Table:</p>
  
  <pre><code>ID      Date
  1       5/1/10
  1       6/1/10
  1       7/1/10
  2       6/15/10
  3       8/15/10
  3       8/15/10
  4       4/1/10
  4       4/15/10
  4       
  </code></pre>
  
  <p>Desired Output:</p>
  
  <pre><code>ID       Date       Next_Date
  1        5/1/10     6/1/10
  1        6/1/10     7/1/10
  1        7/1/10     
  2        6/15/10    
  3        8/15/10    
  3        8/15/10    
  4        4/1/10     4/15/10
  4        4/15/10    
  </code></pre>