Order By DateTime With 00:00:00 Last order by datetimecolumn orders a datetime column like this:

datetimecolumn   
2014-09-04 00:00:00
2014-09-04 00:00:00
2014-09-04 01:00:00
2014-09-05 00:00:00
2014-09-05 01:00:00
2014-09-05 02:00:00


How can I order the data so the the values with 00:00:00 are last, but still order the values ascending by time like so:

datetimecolumn    
2014-09-04 01:00:00
2014-09-04 00:00:00
2014-09-04 00:00:00
2014-09-05 01:00:00
2014-09-05 02:00:00
2014-09-05 00:00:00


Dumb business rule, I know I know... basically if "user" does not spec a time, the time does not matter (so it goes to the bottom of the list).
First order by just the date, then prioritize the values where the timestamp is not midnight over those where it is.

ORDER BY CONVERT(DATE, col),
  CASE WHEN CONVERT(DATE,col) = col     
  THEN 2 ELSE 1 END,
  CONVERT(TIME, col);