gpt4 book ai didi

python - 获取 4 天内创建的每组记录中的 'top' 条记录

转载 作者:行者123 更新时间:2023-11-28 22:02:52 24 4
gpt4 key购买 nike

我正在创建一个 Django 应用程序,其中有一个表,其中包含“项目”、它们的创建日期以及它们所拥有的点数。我想编写一个查询,返回过去 4 天得分最高的项目,然后返回前 4 天得分最高的项目,依此类推。我想知道我该怎么做(我是 SQL 的新手,如果这是一个基本问题,我很抱歉)。我想我可以在我的 Django View 中遍历获取每组 4 中的最高记录,然后组合对象,但这需要我为每个组访问数据库,我猜这将是一个糟糕的方法正在做?任何指针将不胜感激!

谢谢!

最佳答案

不幸的是,这里无法避免访问每个组的数据库。不过,这应该不是什么大问题,我假设您会将组数限制在理智的范围内?如果您担心数据库负载,请确保为“创建日期”和“积分”字段编制索引。

您的代码应该类似于:

from datetime import date, timedelta
from models import Item

groups = []
for i in range(0, 10):
items = Item.objects.filter(date_created=date.today() - timedelta(i))
groups.append(items.order_by('-points'))

关于python - 获取 4 天内创建的每组记录中的 'top' 条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10475814/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com