title: select 10 rows forwards and 10 backwards from a date
body: <p>I'm trying to select 10 rows from today's date in either direction (forward and backwards in time) and in date order. The best I've got so far is:</p>
  
  <pre><code>SELECT * FROM (
    SELECT * FROM foo WHERE dt &gt;= now() ORDER BY dt ASC LIMIT 10
      UNION
    SELECT * FROM foo WHERE dt &lt; now() ORDER BY dt DESC LIMIT 10
  ) ORDER BY dt ASC;
  </code></pre>
  
  <p>Is there a nicer/more efficient way to do this?</p>
  
  <p>Thanks.</p>