I am trying to work out if it's possible/practical to use the Django ORM to get the highest value in an arbitrary timebox out of the database. Imagine a restaurant orders ingredients every day, we might have a simple model that looks like: class Order(models.Model): date = models.DateField() ingredient = models.CharField() quantity = models.IntegerField() Then I am able to get the sum quantities ordered each week: Order.objects.filter(date__gte=start_date, date__lt=end_date) .annotate(date=TruncWeek("date")) .values("ingredient", "date") .annotate(total=Sum("quantity")) .order_by("ingredient") But now I want to figure out the maximum quanity of each ingredient that has been ordered in any consecutive 7 (or X number of) days, across the filtered date range. Is it possible to do this in the ORM? Continue reading...