Can't be sure about the empty cells. I suggest using the historical trend viewer to make sure there is actually data available.
I belive the start time has to do with how and when the data was saved to the database.
What I have seen when pulling histories is that you will get the latest data logged prior to the time you specify. The idea being that there may not be an entry for the exact time you request, so the reading before that time is returned to allow you to do a linear interpolation to determin what the value was at the time you requested.
Ben