0
我有问题写入组由sql进入Django应用程序。你们中的任何一位django用户可以帮助我如何将这个sql写入django友好的代码?这是我的模型:群由django聚合函数?
class Stock(models.Model):
name = models.CharField("Stock's name", max_length=200)
symbol = models.CharField("Stock's symbol", max_length=20)
class Dividend(models.Model):
amount = models.FloatField(default=0)
date = models.DateField('pay date')
stock = models.ForeignKey(Stock)
class UserStock(models.Model):
amount = models.FloatField('amount', default=0)
date = models.DateField('buy date')
price = models.FloatField('price', default=0)
user = models.ForeignKey(User)
stock = models.ForeignKey(Stock)
这是SQL代码我想在Django写:
select stock_id, sum(price), sum(amount) as price from stocks_userstock group by stock_id;
我试图写这样的事情。
my_stock = UserStock.objects.filter(user=request.user)\
.annotate(sum_price = sum('price'), sum_amount = sum('amount'))
在此先感谢,我希望它不会成为您的一些问题。
它仍然给我像以前一样的错误。 '.values(“stock_id”)行上的+:'int'和'str'的不受支持的操作数类型(注意:sum_price = sum('price'),sum_amount = sum('amount')) 。那些来自数据库的数据应该是int,为什么是字符串? – Lucas03 2013-04-23 19:49:46
我不知道,你以前从来没有提过错误...你是否使用了适当的“Sum”? (它应该是资本,我只是使用你发布的内容) – Ngenator 2013-04-23 19:56:44
是的,这是总和小的第一个字母。谢谢。 – Lucas03 2013-04-23 20:23:28