Если бы у меня было два разных QuerySets в Django, оба представляющих отношение ManyToMany с одной и той же моделью, как бы я нашел пересечения?
Вы можете избежать вопроса, используя оператор IN для создания подзапроса: http://docs.djangoproject.com/en/dev/ref/models/querysets/#in
Объедините ваши наборы запросов в список и затем создайте набор, и вы преобразуете его обратно в список:
from itertools import chain merged_qs = chain(queryset1, queryset2) intersection_list = list(set(list( merged_qs )))