【问题标题】:Query for document in subcollection firestore查询子集合 firestore 中的文档
【发布时间】:2019-10-20 08:39:04
【问题描述】:

我的数据库结构如下:

在 Location 集合内有一个文档,其中有经纬度坐标:

我的最终目标是获取所有用户的所有经纬度坐标,但是如果我不知道文档名称在哪里,我已经坚持如何获取位置集合?

我可以做一些查询来直接进入WhereEqualTo("Lat")之类的地方吗?

首先我尝试了以下方法:

    db.collection("Users").get()
            .addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
                @Override
                public void onComplete(@NonNull Task<QuerySnapshot> task) {
                    if (task.isSuccessful()) {

                        List<String> listID = new ArrayList<>();
                        for (QueryDocumentSnapshot doc : task.getResult()) {

                            listID.add( doc.getId() );
                        }

但是它返回空列表。

谢谢

【问题讨论】:

    标签: android firebase google-cloud-firestore


    【解决方案1】:

    你需要使用Collection Group Query,如下:

    db.collectionGroup("Location").get()
            .addOnSuccessListener(new OnSuccessListener<QuerySnapshot>() {
                @Override
                public void onSuccess(QuerySnapshot queryDocumentSnapshots) {
                    // ...
                }
            });
    

    这将对您数据库中的所有集合名称Location 运行查询。

    【讨论】:

      猜你喜欢
      • 2020-07-26
      • 2021-04-08
      • 2021-07-12
      • 2018-06-19
      • 1970-01-01
      • 2020-12-02
      • 2020-05-08
      • 1970-01-01
      • 2021-09-25
      相关资源
      最近更新 更多