2012-05-16 9 views
5

Czy ktoś ma pomysł, jak odzyskać ostatni obiekt (z datą najnowszą) w objectify? Wiem, jak utworzyć zapytanie, ale jak odzyskać tę z najnowszą datą?Jak uzyskać podmiot o najnowszej dacie

List<Transaction> fetched2 = ofy.query(Transaction.class).filter("someproperty", somepropertyvalue).order("date").list(); 

Mogę spróbować wymyślić to, ale jestem pewien, że jest łatwiejszy sposób. THX

+0

coś jak dodawanie .get (0)? – Daniel

Odpowiedz

7

Po prostu trzeba dodać minusa przed „data” w kolejności:

List<Transaction> fetched2 = ofy.query(Transaction.class).filter("someproperty", somepropertyvalue).order("-date").list();

To powinno wrócić Ci listę transakcji z najnowszego w pierwszej pozycji.

+0

dziękuję za odpowiedź, ale już to wiem, prawdopodobnie nie byłem wystarczająco jasny. Chcę, aby ten element (pierwszy lub ostatni w zależności od sortowania) został usunięty z listy. –

+0

Powiedziałbym, że jak na liście, prosty plik fetched2.get (0) lub fetched2.get (fetched2.size() -1) działałby ... ponieważ lista jest już posortowana, to zwróci najnowsza i najstarsza transakcja. – CMDej

+0

cóż, lista jest obiektów tak niefortunnych, że to nie zadziała –

0

jeśli chcesz przeprowadzić sortowanie w objectify, powinieneś dokonać zamówienia według metody. Na przykład, jeśli masz Przykładowa tabela i chcesz zastosować sortowanie na nim

malejący sortowania próbki Próbka = ofy.query (.class Sample) .filter ("propertyname", "WartośćWłaściwości) .order (" + data ") .list() pierwsza().

otrzymuje pierwszy zapis w

malejący sortowania PRÓBKA = ofy.query (.class próbki) .filter (" propertyname "" WartośćWłaściwości). zamówienie ("+ data")

Powiązane problemy