python - 在 Django 中分组

标签 python django django-models

如何在 django 的主干版本中通过查询创建简单的组?

我需要类似的东西

SELECT name
FROM mytable
GROUP BY name

实际上我想做的只是获取所有具有不同名称的条目。

最佳答案

如果您需要所有不同的名称,只需这样做:

Foo.objects.values('name').distinct()

您会得到一个字典列表,每个字典都有一个名称键。如果您需要其他数据,只需将更多属性名称作为参数添加到 .values() 调用中即可。当然,如果您添加的属性在同名行之间可能不同,就会破坏 .distinct()。

如果您想取回完整的模型对象,这将无济于事。但是无论如何,获得不同的名称和获得完整的数据本质上是不相容的目标;您如何知道要完整返回具有给定名称的行?如果要为具有给定名称的所有行计算某种聚合数据,aggregation support最近添加到 Django 主干,可以为您处理。

关于python - 在 Django 中分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/475552/

相关文章:

Django 休息 : How do i return SimpleJWT access and refresh tokens as HttpOnly cookies with custom claims?

Django级联保存?

django - 跟踪对Django模型实例的更改

python - 重复随机数

django - 未在 Angular 客户端上设置 Cookie

django - NoModuleName 'channels' ,但我已经安装了它。 Django

python - 根据另一个字段的值在 Django 模型上添加约束

python - 我的 csv 中有多个列。如何使用 python 将行值与引用列匹配?

python - 如何在 wxpython gui 中显示graphicsmagick 图像?

Python Web Scraping title in a special div & Page 1 + 15