date - 如何使用Firestore仅从特定日期获取数据?

标签 date flutter dart google-cloud-firestore

我正在尝试使用Firestore将集合中的所有文档放入列表中,我希望仅在特定年份上传的文档。

所有文档中都有一个名为“dateAdded”的字段,该字段存储格式为“dd-MM-yyyy”的日期。

为了测试,我只有3个文档,其中2个是在2020年上传的,而1个是在2019年上传的

QuerySnapshot querySnapshot= await Firestore.instance
                      .collection('Deceased')
                      .where("dateAdded",
                      isGreaterThanOrEqualTo:"01-01-"+year )
                       .where("dateAdded",isLessThanOrEqualTo:"31-12-"+year )
                      .getDocuments();

我试图这样做,只有第一个条件有效。有什么建议么?

最佳答案

有一种可以使用的叫做startAtstartAfterendAtendBefore的东西,您必须首先在要使用的查询字段上进行排序,在这里,我在使用startAtendAt,它们应该为您提供想要的结果相信是一年的记录

QuerySnapshot querySnapshot= await Firestore.instance
                      .collection('Deceased')
                      .orderBy('dateAdded')
                      .startAt([DateTime(year,1,1,0,0,0)])
                      .endAt([DateTime(year,12,31,23,59,59])(
                      .getDocuments();

关于date - 如何使用Firestore仅从特定日期获取数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59729115/

相关文章:

sql - 在没有循环的情况下在 SQL 中添加迄今为止的工作日

以微秒为单位的 Java utc 时间和以 15 微秒为单位的 block

dart - 在客户端从base64制作图片

dart - 如何在抽象类中声明工厂构造函数?

json - 如何在 Grails 中为 JSON 转换器设置日期格式

java - 计算两个 Java 日期实例之间的差异

flutter - 与提供商更改颜色和图标

flutter - PickedImage 为空

flutter - 如何使用 Flutter 中的小部件从文件中读取文本并将它们显示为列表?

dart - 以编程方式创建聚合物元素