У меня есть модель:
class <b>Employee(models.Model):</b>
name = models.CharField(max_length=255)
department = models.ForeignKey("Department", ...)
......
...
Вот набор запросов, который возвращает наиболее эффективных сотрудников в компании, отсортированных по аннотированному полю score
.
best = Employees.objects.filter(...some filters).annotate(score=...some calculations).order_by('-score')
Как ограничить набор запросов, чтобы он возвращал максимум 2 or n
нет. последовательных сотрудников с одним и тем же отделом?
текущий результат: (только отдел печати для экономии времени)
dep5, dep9, dep9, dep9, dep9, dep5, dep5, dep4, dep4, dep4
Ожидаемый результат: (только отдел печати для экономии времени)
dep5, dep9, dep9, dep5, dep5, dep4, dep4
Примечание :
Я провел свое исследование и не смог найти никакого решения. Пожалуйста, помогите.