This query gets all overlapping appointments from six to ten.
Appointment.objects.filter(time_span__overlap=(6, 10))