如何在Django中获得具有条件的列的“和”
我正在使用django 1.11和postgresql 9.5。 在视图中,我正在读取文件并将数据插入数据库 桌子的结构是这样的如何在Django中获得具有条件的列的“和”,django,python-2.7,postgresql,django-models,Django,Python 2.7,Postgresql,Django Models,我正在使用django 1.11和postgresql 9.5。 在视图中,我正在读取文件并将数据插入数据库 桌子的结构是这样的 id | integer user_id | integer percentage | numeric(3,2) 插入数据后,我得到了如下表 id user_id percentage 1 1 9 2 1 50 3 1 4 4 2
id | integer
user_id | integer
percentage | numeric(3,2)
插入数据后,我得到了如下表
id user_id percentage
1 1 9
2 1 50
3 1 4
4 2 12
5 2 23
6 3 46
7 3 33
8 4 87
现在我想找到,每个用户百分比的总和,比如
user-1 = 63
user-2 = 35
user-3 = 79
user-4 = 87
我浏览了文档,发现聚合查询如下:
<modelname>.objects.aggregate(Sum('percentage'))
但,这将给出整个列的总和,我想为个人用户求总和。如何实现。我认为您需要使用注释
<modelname>.objects.values('user').annotate(percentage=Sum('percentage')).order_by()