Един от начините би бил да използвате „календарна таблица“ или ако винаги се интересувате само от един ден, ще свърши работа „таблица с часовник“. Следното илюстрира (приблизително) как бихте го използвали.
SELECT clock.time AS available
FROM clock
LEFT JOIN bookings ON clock.time BETWEEN bookings.from AND bookings.to
AND bookings.date = '2013-01-01'
WHERE bookings.id IS NULL
http://www.brianshowalter.com/calendar_tables е пример за това как да създадете календар в MySQL