首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Firebase orderBy时间戳未实际排序

问Firebase orderBy时间戳未实际排序
EN

Stack Overflow用户
提问于 2020-04-09 07:02:53
回答 1查看 399关注 0票数 1

我有一个查询,它在我的服务器中按我的时间戳值排序,当前的时间戳由我的pojo设置为日期

代码语言:javascript
复制
data class Timestamp(@ServerTimestamp val timestamp:Date? = null)

此时间戳放在firestore中,格式为

​

​

但是当我做取数代码的时候

代码语言:javascript
复制
 val snapshot =  FirebaseFirestore
            .getInstance()
            .collection("orders")
            .whereEqualTo("uid",currentUser.uid)
            .whereLessThan("status",Status.DELIVERED.statusNumber)
            .orderBy("status",Query.Direction.DESCENDING)
            .orderBy("timestamp",Query.Direction.ASCENDING)

我希望在列表中首先看到我完成的最新订单,但实际上是将我的旧订单与新订单混合在一起,我的目标是首先显示我在orders集合中放置的最新订单,但在创建新订单时不会对其进行排序

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-09 07:14:35

如果你首先想要最新的文档,你应该在时间戳上做一个降序。如果您希望列表主要按时间戳排序,其次按状态排序,则时间戳orderBy应位于orderBy on status之前(目前,您主要是按状态排序,其次是按时间戳排序)。

代码语言:javascript
复制
.orderBy("timestamp",Query.Direction.DESCENDING)
.orderBy("status",Query.Direction.DESCENDING)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61111400

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档