如何根据 dart/flutter 中的日期从 firebase/firestore 集合中检索 1 个文档?

贾斯汀·凯帕达

Ofc,我知道我们从一个集合中检索一大堆文档的基本方法,如下所示:

      stream: Firestore.instance
          .collection("collection_name")
          .orderBy("date", descending: true) // new entries first
          .snapshots(),
      builder: (context, snapshot) { ....

当我显示一大堆数据时,这很好。

但是我有需要对最后添加的数字进行一些计算的情况,这意味着我只需要获取 1 个文档,所以我所做的是按日期对数据进行排序并按 1 限制,然后对这个文档进行查询,例如这

List<DocumentSnapshot> list;
    QuerySnapshot querySnapshots;
    if (await AuthHelper.checkIfUserIsLoggedIn()) {
      String userId = await AuthHelper.getUserID();
      querySnapshots = await Firestore.instance
          .collection("collection_name")
          .orderBy("date", descending: true) // new entries first, date is one the entries btw
          .limit(1)
          .getDocuments(); // Get Documents not as a stream
      list = querySnapshots.documents; // Make snapshots into a list
      return (list ?? null);
    } else {
      return null;
    }

但这是最好的方法吗?进行此查询时,我不是获取了整套文档并丢弃了其余文档吗?这意味着当这个集合增长时,它会变得越来越慢?

有没有更好的方法来检索最后添加的文档?所以我可以将它用作列表/数组/映射而不是流?

谢谢。

道格史蒂文森

当您限制查询时,您只会读取该数量的文档max它不会读取整个集合并丢弃额外内容。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何从Firestore中的集合中检索所有文档?

从集合中检索最后一个文档时如何提高性能

如何从Cloud Firestore的集合中检索一个特定文档?

如何通过FirebaseFirestore查询从类中的方法检索数据列表?

如何从集合中检索所有文档ID?

如何从 azure cosmosdb 集合中检索单个文档

如何从文档中检索未知子集合

如何在Firestore中检索子集合的文档?

如何从POJO类的Firestore集合中检索所有文档?

如何检索添加到Cosmosdb集合中的文档的ID?

如何根据另一个集合中存储的数组过滤Firestore中的文档?

MS-Access:如何根据日期对 2 个不同表中的多个值求和,每行输出 1 个日期

如何检索集合中的所有文档并查看Firebase Firestore中是否存在文档?

如何在xwiki中检查标签超过1个的文档?

Firestore根据orderBy和限制从集合中检索单个文档,而没有forEach

如何根据其他元素从集合中检索元素?

按ID从集合中检索文档

根据另一个集合中的值从集合中删除文档

猫鼬-如何从集合中的每个文档中检索对象数组?

如何根据索引从 Cloud Firestore 集合中获取文档?

我如何引用另一个猫鼬模型中的字段,以便我可以从不同集合中检索多个文档

如何在一个集合中查找未被另一个集合中的文档引用的MongoDB文档?

如何显示按日期命名的集合中的文档数据列表?

使用 Flutter 创建用户集合后,如何在 Firestore 中检索文档 ID

如何从所有文档的子集合中检索所有数据

从集合中检索所有文档后如何很好地显示字段内容

如何从集合中检索所有文档及其相关信息?(反应原生 Firebase)

如何使用Android Studio / Kotlin访问FirebaseFirestore中的数组字段?

Firestore-一个集合请求中可以检索多少个文档?