Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 分组方式和计数值_Python_Django_Python 3.x_Django 2.0 - Fatal编程技术网

Python 分组方式和计数值

Python 分组方式和计数值,python,django,python-3.x,django-2.0,Python,Django,Python 3.x,Django 2.0,我是Django的新手 我有不同的类别(股票、投资组合、交易) 我想做的是总结每只股票的所有交易 所以基本上这就是我现在的行 我想按stock\u id进行组合或分组,并计算open\u price和quantity的总和 我试过了 Trade.objects.filter(portfolio=1).values('stock__name').aggregate(stock_total=Count('stock',distinct=True)) 但这不起作用 我需要如何编写查询以获得该结果

我是Django的新手

我有不同的类别(股票、投资组合、交易)

我想做的是总结每只股票的所有交易

所以基本上这就是我现在的行

我想按
stock\u id
进行组合或分组,并计算
open\u price
quantity
的总和

我试过了

Trade.objects.filter(portfolio=1).values('stock__name').aggregate(stock_total=Count('stock',distinct=True))
但这不起作用

我需要如何编写查询以获得该结果?

尝试以下操作:

from django.db.models import Count

Trade.objects.filter(portfolio=1).values('stock__name').annotate(stock_total=Count('entry'))
这个怎么样,

from django.db.models import Count

Trade.objects.filter(portfolio=1).values('stock__name').annotate(stock_total=Count('entry')).order_by('stock__name')

谢谢,我可以直接在这里计算值吗?例如,返回一个COLLMN,其中我对每行进行数量*开盘价,然后对每种股票进行合计。是的,我想你可以这样做,只要试一下,让我知道。
。注释(total\u quantity=sum('quantity'),total\u buy\u price=sum(“数量*开盘价”)
诸如此类?或者,既然没有,还有别的办法吗work@Sharpless512不,你不能这样做,我怎么做?