Lo único que se me ocurre es que modifiques la tabla de la base de datos y en lugar de representar rangos de fecha, tengas un registro por cada día y cada trabajador. Es decir, la tabla sería así:
id | fecha1................| usuario
1 |01-01-2009 08:00 | pedro
2 |01-01-2009 08:00 | luis
3 |02-01-2009 08:00 | luis
4 |04-01-2009 08:00 | pedro
5 |05-01-2009 08:00 | pedro
6 |06-01-2009 08:00 | pedro
7 |08-01-2009 08:00 | luis
8 |09-01-2009 08:00 | luis
Entonces lo tendrías mucho más fácil. De la otra forma no se me ocurre nada. Lo siento.
Un saudo