Django查询模型-GROUP BY,MIN,MAX [英] Django query model - GROUP BY, MIN, MAX

查看:218
本文介绍了Django查询模型-GROUP BY,MIN,MAX的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我无法将查询转移到django。
在sqlite3中看起来像这样:

I'm having trouble transferring my query to django. In sqlite3 it looked like this:

SELECT A, MIN(B), MAX(B) from table GROUP BY A

这将输出A的唯一值以及B的值范围
任何有关如何处理此问题的提示?

This would output unique values from A with a range of values from B Any hints on how to approach this? Is it even possible in django?

推荐答案

您可以使用 values()表示 GROUP BY ,而 annotate()表示 MIN MAX

You can use values() for the GROUP BY, and annotate() for the MIN and MAX:

from django.db.models import Min, Max

MyModel.objects.values('A').annotate(min_b=Min('B'), max_b=Max('B'))

您将获得字典列表,其中包含键 A min_b max_b

You'll get a list of dictionaries, containing the keys A, min_b and max_b.

这篇关于Django查询模型-GROUP BY,MIN,MAX的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆