【发布时间】:2016-09-18 14:04:52
【问题描述】:
我正在尝试按每条记录的name 字段的字符对记录进行分组,并限制每组中的项目,这是我想出的:
desired_letters = ['a','b','c',..,'z']
some_variable = {}
for desired_letter in desired_letters:
some_variable += User.objects.all().order_by("name").filter(name__startswith=desired_letter)[:10]
我在 for 循环中运行此查询并将 desired_letter 更改为我想要的字母,是否有任何其他方法可以优化此解决方案并使其成为单个查询而不是 for 循环?
【问题讨论】:
-
好的,那我们有什么可以帮忙的呢?
-
@MosesKoledoye 我需要对此进行优化,并可能使用
values()函数将其作为单个查询 -
这个 group by 没有任何意义吧?如果您按每个用户姓名的第一个字母进行分组,您只会得到 26 条记录,这就是您要查找的内容吗?