【问题标题】:How to get documents only have specified field value?如何获取只有指定字段值的文档?
【发布时间】:2021-10-24 17:39:11
【问题描述】:

有包含用户信息的文档。

"users" collection
 |- "user1" doc
    |- "name" : "John"
    |- "age" : 20
 |- "user2" doc
    |- "name" : "Mike"
    |- "age" : 30
 |- "user3" doc
    |- "name" : "Dave"
    |- "age" : 20
 |- "user4" doc
    |- "name" : "Chen"
    |- "age" : 25

我想要做的是获得具有相同年龄值的名称。 以上述结构为例,当你想只得到 20 岁时,返回“John”和“Dave”的文档。

通常,您会获取“用户”集合的所有文档并在客户端上选择它们,但这会浪费 Firebase 的“文档读取”或帮助网络限制。

如何在 Firebase 端而不是在客户端进行字段选择?

【问题讨论】:

    标签: flutter dart google-cloud-firestore


    【解决方案1】:

    您要查找的是query。有了这个,它看起来像:

    FirebaseFirestore.instance
      .collection('users')
      .where('age', isEqualTo: 20)
      .get()
      .then(...);
    

    另请参阅 queries 上的 Firebase 文档,该文档没有 Flutter/Dart 示例,但除此之外更全面。

    【讨论】:

      猜你喜欢
      • 2020-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-18
      • 2022-08-24
      • 1970-01-01
      • 2023-02-21
      • 2016-12-25
      相关资源
      最近更新 更多