mysql show time slots disponíveis e slots de tempo ocupados de mesa

Eu tenho essa estrutura de tabela para reservas

|ID|timeBooked         | duration |
|2 |2013-05-09 11:10:00| 30       |
|1 |2013-05-09 14:40:00| 15       |
|AI| timespan          | int(4)   |

duração representa a duração em minutos.

Então, o que eu quero é retornar o registro como este quando eu

consultar intervalos de tempo disponíveis em 2013-05-09 entre 00:00:00 e 23:00:00

|free_from|Free_until| Free |
|00:00:00 |11:10:00  | 1
|11:10:00 |11:40:00  | 0
|11:40:00 |14:40:00  | 1
|14:40:00 |14:55:00  | 0
|14:55:00 |23:00:00  | 1

isso é possível apenas pelo mysql?

questionAnswers(3)

yourAnswerToTheQuestion