3

我刚开始使用 django。我的模型非常简单,由时间戳和值(温度,每分钟更新一次)组成。我想检索过去 7 天中每一天的最大值。

我需要查询 7 次还是有“捷径”?

4

1 回答 1

5

您可以使用annotate()and extra()

start_date = date.today() - timedelta(days=7)

MyModel.objects.filter(timestamp__gte=start_date).extra(select={'day': connection.ops.date_trunc_sql('day', 'timestamp')}).values('day').annotate(max_temperature=Max('temperature'))
于 2013-08-12T09:01:37.727 回答