有没有人知道如何在物化中检索最后一个(最新日期)实体?我知道如何进行查询,但如何检索具有最新日期的查询?
List<Transaction> fetched2 = ofy.query(Transaction.class).filter("someproperty", somepropertyvalue).order("date").list();
我可以尝试对它进行冒泡但是我确定有一种更简单的方法。 THX
答案 0 :(得分:8)
您只需在订单中的“日期”前添加减号:
List<Transaction> fetched2 = ofy.query(Transaction.class).filter("someproperty", somepropertyvalue).order("-date").list();
那应该返回一个Transaction列表,其中最新的一个位于第一个位置。
答案 1 :(得分:0)
我不知道您的用例,但如果您想要获得“新”实体(在最后一次查询后添加/更新的实体),您可能需要使用游标。它们更有效率,因为它们只获得新的/更新的实体:https://developers.google.com/appengine/docs/java/datastore/queries#Query_Cursors
答案 2 :(得分:0)
如果你想在客观化中进行排序,你应该按用户的方式排序。例如,如果您有一个表Sample,并且您想对其应用排序
升序排序 示例sample = ofy.query(Sample .class).filter(“propertyname”,“propertyvalue).order(”+ date“)。list()。first();
获取
中的第一条记录降序排序 示例sample = ofy.query(Sample .class).filter(“propertyname”,“propertyvalue).order(”+ date“)