如何从Firebase获取文档的查询,并按时间戳排序?

时间:2020-07-28 02:24:24

标签: java android firebase google-cloud-firestore

在我的应用中,用户可以将包含时间戳的文档上传到Cloud Firestore。这些文档构成了用户文档中的一个子集合,可跟踪他们在应用程序中的每日统计信息。我希望能够使用collection.orderBy之类的东西从数据库中检索这些文档的查询。

我理想上还是希望在多个不同的时间范围之间进行排序。例如,我希望能够对所有时间戳与7月16日匹配的文档进行排序。有没有办法做到这一点?谢谢。

1 个答案:

答案 0 :(得分:0)

您可以在时间戳字段中使用range query。您将必须提供查询的起点和终点。

firestore
    .collection("your-collection")
    .whereGreaterThan("timestamp", start)
    .whereLessThan("timestamp", end)
    .orderBy("timestamp")

timestamp是您的时间戳字段的名称。 startend必须是日期或时间戳记对象。如果时间段只有一天,那么您将需要在这一天前后建立起点和终点。在您的特定情况下,也许7月16日午夜和7月17日午夜可能是一个很好的界限,但这取决于您。