

Q()는 Django의 ORM에서 복잡한 조건
(특히 OR, AND, NOT)을 표현할 수 있게 해주는 쿼리 객체
combined_schedule_queryset =
Schedules.objects.filter(schedule_id__in=related_schedule_id_set).
filter(Q(schedule_start__month__in=related_month) |
Q(schedule_end__month__in=related_month))
.values_list("schedule_start", "schedule_end").distinct()
related_schedule_queryset1 =
Schedules.objects.filter(
schedule_id__in=related_schedule_id_set,
schedule_start__month__in=related_month
).values_list("schedule_start", "schedule_end").distinct()
related_schedule_queryset2 =
Schedules.objects.filter(
schedule_id__in=related_schedule_id_set,
schedule_end__month__in=related_month
).values_list("schedule_start", "schedule_end").distinct()
combined_schedule_queryset = set(chain(related_schedule_queryset1, related_schedule_queryset2))