2016-08-03 38 views
1

我有一個註釋的查詢集,其中我註釋了數字的總和。但是,我希望結果是這個數字的負數。我似乎無法做到這一點是這樣的:你如何否定django中的註釋字段?

Model.objects.all().annotate(total=-Sum('qty'))

回答

0

˚F對象,當然!

Model.objects.all().annotate(total=Sum(F('qty')*-1))

0

我知道這聽起來很瘋狂,但試試這個:

Model.objects.all().annotate(total=0-Sum('qty')) 

一元運算符-似乎不支持的,但是二元運算符的作品。

+0

一個非常聰明的答案!但是,我對我提出的答案做了一些時間測量,發現在我的應用程序中比您的應用程序更快。不過,我非常感謝你的幫助。 – Bobort