【发布时间】:2019-09-03 03:44:09
【问题描述】:
class Forecast(Model):
id = UUID()
type = StringField()
approved = BooleanField()
我想通过在已批准字段上应用“逻辑和”来对字段 type 进行分组。假设带注释的字段是all_approved。 all_approved 应该是 True 如果该类型的所有项目都为 True,如果至少一个为 False,则为 false。
所以最后在我的查询集中我想要两个字段type,all_approved。
我怎样才能做到这一点?
我尝试了基于this answer 的东西,但什么都得不到。
编辑:
当我尝试该答案中给出的内容时,它没有执行“逻辑与”。而对于每个type,它只给出两项,一项以all_approved 为真,另一项以all_approved 为假。我希望每个 type 都有一个项目。
我也不明白为什么这个答案应该有效。如果在分组时应该执行“逻辑与”或“逻辑或”,则在哪里指定。
【问题讨论】:
-
请根据您的数据展示您的尝试和错误,因为在您链接的答案中有一个很好的例子。
-
@BearBrown 编辑了答案
-
在您链接的文章中,他们使用 Count 进行聚合。但我找不到任何对布尔字段起作用的 Django 数据库函数。例如,我尝试了 Min(),但它失败了。
-
我添加了答案,我尝试在放置链接时说出我的意思
标签: django postgresql django-queryset