Firebase 如何获取昨天的所有记录';Firestore Flatter中的日期?

Firebase 如何获取昨天的所有记录';Firestore Flatter中的日期?,firebase,flutter,dart,google-cloud-firestore,Firebase,Flutter,Dart,Google Cloud Firestore,我想取昨天的所有文件。目前,在where和isEqualTo条件的帮助下,我设法获得了今天日期的所有数据。但是我无法得到昨天的数据 这是我的代码片段,我从中获得了今天的文档 谢谢你的帮助 final uid=getCurrentUID(); 最终QuerySnapshot结果=等待FirebaseFirestore .例如 .收藏(‘学校’) .doc(uid) .collection(“学校数据”) .where('Todays_Date',isEqualTo:todaysDate) .get

我想取昨天的所有文件。目前,在
where
isEqualTo
条件的帮助下,我设法获得了今天日期的所有数据。但是我无法得到昨天的数据

这是我的代码片段,我从中获得了今天的文档

谢谢你的帮助

final uid=getCurrentUID();
最终QuerySnapshot结果=等待FirebaseFirestore
.例如
.收藏(‘学校’)
.doc(uid)
.collection(“学校数据”)
.where('Todays_Date',isEqualTo:todaysDate)
.get();

您可以获得如下两个日期:

    DateTime todaysDate = DateTime.now();
    DateTime yesterdayDate = DateTime.utc(todaysDate.year, todaysDate.month, todaysDate.day -1);
如果只需要昨天的数据:

final QuerySnapshot result = await FirebaseFirestore
                              .instance
                              .collection('School')
                              .doc(uid)
                              .collection('School_Data')
                              .where('Todays_Date', isEqualTo: yesterdayDate)
                              .get();
如果您想获取昨天以来的数据,Firestore允许您在单个字段上执行范围(=)或不等于(!=)比较:

final QuerySnapshot result = await FirebaseFirestore
                              .instance
                              .collection('School')
                              .doc(uid)
                              .collection('School_Data')
                              .where('Todays_Date', isGreaterThanOrEqualTo: yesterdayDate)
                              .where('Todays_Date', isLessThanOrEqualTo: todaysDate)
                              .get();