【问题标题】:Android Firestore Query : get the number of documents within a collectionAndroid Firestore Query:获取集合中的文档数
【发布时间】:2020-04-16 15:37:21
【问题描述】:

在我的应用程序中,用户可以喜欢某些帖子。他们的点赞会以这种方式存储。

数据库图片:

基本上:在集合 Posts -> postID -> 集合 Likes -> userID -> timestamp。我想要得到的是 userIds 在所有帖子的 Likes 集合中的数量。基本上我想在我的 Recycler Adapter 中首先显示点赞数最高的帖子数。

我相信我正在寻找可以帮助我获得 currentUserIds 数量的类型的查询,然后在我的适配器中按降序显示它们:

Query firstQuery = firebaseFirestore.collection("Likes").document(currentUserId)...

【问题讨论】:

    标签: java android firebase google-cloud-firestore


    【解决方案1】:

    我想要得到的是所有帖子的 Likes 集合中 userIds 的数量。

    在这种情况下,您应该执行Firestore collection group query:

    集合组由具有相同 ID 的所有集合组成。默认情况下,查询从数据库中的单个集合中检索结果。使用集合组查询从集合组而不是单个集合中检索文档。

    因此,在您的情况下,您应该使用以下查询:

    db.collectionGroup("Likes").get().addOnCompleteListener(/* ... */);
    

    要实际计算文档的数量,请查看我在以下帖子中的回答:

    【讨论】:

      猜你喜欢
      • 2018-04-09
      • 2018-04-04
      • 1970-01-01
      • 2020-08-01
      • 1970-01-01
      • 2019-10-06
      • 2022-01-21
      • 2021-11-04
      • 2019-11-13
      相关资源
      最近更新 更多