title: Storing and searching opening/closing times for stores
body: <p>I'm writing an application that indexes data for our stores, some of which are open late (8 am - 2 am).  We need to be able to search this database quickly -- basically, to run a query to find which stores are open at a given point in time (now, Sunday at 1 am, whatever).</p>
  
  <p>In addition, the open/close times can vary day-by-day -- some stores are closed on Sundays, for example.</p>
  
  <p>The obvious solution to me would be to make a table where I have a row with the store ID, day, open time, and close time.  For something like Monday, 8 am - 2 am, that would actually be two rows, one for Monday 0800 - 2400, and one for Tuesday 0000 - 0200.  </p>
  
  <p>We have a lot of stores, so the search has to perform well (basically, the data has to be index-friendly), but I'll also have to display this data back out in a human-readable format.  With my current solution, that'd look something like this:</p>
  
  <p>Monday: 8:00 - Midnight
  Tuesday: Midnight - 2:00 am; 8:00 am - Midnight</p>
  
  <p>I'm just wondering if anybody else has alternative solutions before I jump right to an implementation.  Thanks!</p>