Я сделал этот набор запросов для моей базы данных django:
material_purchase=Material_Purchase.objects.order_by("material__id","-purchase__date").values("id","material__id","price","purchase__date")
Это вернуло мне это:
<QuerySet [{'id': 8, 'material__id': 1, 'price': Decimal('6.00'), 'purchase__date': datetime.date(2018, 5, 31)}, {'id': 2, 'material__id': 1, 'price': Decimal('5.00'), 'purchase__date': datetime.date(2018, 4, 29)}, {'id': 9, 'material__id': 1, 'price': Decimal('3.00'), 'purchase__date': datetime.date(2017, 12, 1)}, {'id': 7, 'material__id': 2, 'price': Decimal('10.00'), 'purchase__date': datetime.date(2018, 5, 31)}, {'id': 5, 'material__id': 2, 'price': Decimal('20.00'), 'purchase__date': datetime.date(2018, 5, 16)}, {'id': 1, 'material__id': 2, 'price': Decimal('27.00'), 'purchase__date': datetime.date(2018, 4, 29)}, {'id': 10, 'material__id': 2, 'price': Decimal('5.00'), 'purchase__date': datetime.date(2017, 12, 1)}, {'id': 6, 'material__id': 3, 'price': Decimal('6.00'), 'purchase__date': datetime.date(2018, 5, 31)}, {'id': 11, 'material__id': 3, 'price': Decimal('5.00'), 'purchase__date': datetime.date(2017, 12, 1)}]>
Теперь я хочу удалить все дубликаты объектов с одинаковым «material__id», кроме первого (самого последнего).
Сначала я попытался сделать это с помощью .distinct, но моя база данных - sqlite3, и это выдает ошибку.