çok boyutta django en son girişi alma Bu satırdan value
. Benim sorgu sonucunu isteyeyimBen şuna benzer bir Django modele sahip
Field1, Field2, Field3, TimeStamp, Value
1 , 1 , 1 , 1/1/2015 , 1
1 , 1 , 1 , 1/2/2015 , 2
1 , 1 , 2 , 1/1/2015 , 3
2 , 2 , 2 , 1/1/2015 , 4
satırları2,3,4
Açıkçası böyle bir şey yapabileceğini dönmek için: Örneğin
tablo vardır aşağıdaki satırlar olur diyelim :
dims = MyModel.objects.values('field1', 'field2', 'field3').distinct()
for dim in dims:
row = MyModel.objects.filter(**dim).latest('time_stamp')
value = row.value
Ama DB çok vurur gibi o, orada daha az dokunuşları ile bunu yapmanın bir yolu görünüyor?
Bu işe yaramayabilir, ancak şunları deneyebilirsiniz: “MyModel.objects.values ('field_1', 'field_2', 'field_3'). Distinct(). Not al (en son = Max ('time_stamp'))'? –
@ShangWang Cevabınız için teşekkürler, sorumu daha açık (umarım) yapmak için düzenledim, yöntemle her satırın değerini nasıl koruyabilirim? – sedavidw
Ne demek 'her satırın değerini koru'? Tüm kombinasyon kümelerinden bahsettiğiniz şey ile ilgili mi? Ya da her kayıt için tüm alanları göstermek ister misiniz? –