1
我有一個模型,它看起來像這樣:聚集和額外的價值和Django
class MyModel(models.Model)
value = models.DecimalField()
date = models.DatetimeField()
我在做這個請求:
MyModel.objects.aggregate(Min("value"))
,我得到預期的結果:
{"mymodel__min": the_actual_minimum_value}
但是,我不能找出一種方法來同時獲得最小值和相關的日期(mi發生最小值)。
Django ORM是否允許這樣做,還是我必須使用原始SQL?
糾正我,如果我錯了,但: 與註釋,該查詢集將返回我所有的模型實例,每個實例的「mymodel__min」屬性。 它不會告訴我在哪一天發生的最小值(除非手動比較,對於每個返回的價格,將值設置爲最小值並選擇匹配的日期)。 – Jeremy 2010-07-05 20:13:36
你是對的。對不起,我沒有意識到這也是你問題的一部分。我調整了我的問題,所以你可以按日期分組,這似乎是你想要的,是的? – Bartek 2010-07-05 20:18:35
使用'annotate'將返回所有MyModel實例。我只對其值爲最小值的實例感興趣,並獲得它的日期。 隨着你的新請求,我得到一個列表,每個列表都有不同的日期和不同的最小值(實際上對應於每個模型實例中的值和日期)。 – Jeremy 2010-07-05 20:37:45