.distinct([*fields])
działa tylko w PostgresSQL.
Od odrębny dokumentacja
Oto różnica. W przypadku normalnego wywołania differ() baza danych porównuje każde pole w każdym wierszu podczas określania, które wiersze są różne. W przypadku wywołania differ() z określonymi nazwami pól, baza danych porówna tylko określone nazwy pól.
Jak stwierdzono, wszystkie pola w rekordzie są sprawdzane. Najprawdopodobniej w twoim przypadku otrzymujesz rekordy z różnymi wartościami pól (bardziej prawdopodobny przypadek, jeśli wysyłasz zapytania do wielu tabel o relacje ManyToMany lub ForeignKey).
Aby przeprowadzić konsolidację jako tablicę, możesz skierować swoje wcześniejsze pytanie Django Query odrębne wartości działają, ale nie mogę użyć wyniku zapytania