Удалить дубликаты из queryset
📁 django
Добрый день, имеется queryset, нужно из него удалить дубликаты:
example = models.Object.objects.values('name', 'photo__name').distinct()
имеем джоин, в результате нужно получить чтобы name и photo__name не имели одинаковых значений, как это реализовать используя Django ORM ? Cпасибо!
Есть решение в лоб
example = models.Object.objects.values('name', 'photo__name').extra( where=['""name"" != ""photo__name""']).distinct()которое генерирует примерно следующий SQL
SELECT ""object"".""name"", ""photo"".""photo__name"" FROM ""object"" INNER JOIN [...] WHERE (""name"" != ""photo__name"") ``возможно из-за join придётся указать полные названия таблиц, например
where=['""object"".""name"" != ""photo"".""photo__name""'] Войдите чтобы оставить ответ