Cloud Firestore-日期范围查询,其中文档具有日期范围

时间:2019-11-24 05:08:12

标签: firebase google-cloud-firestore range

我想对具有多个范围的对象的集合进行日期范围查询。确切的用例是

  • 每个对象代表一个重复发生的事件。该事件可以在多个日期发生。因此,请考虑以下因素:

    object = {'inventoryOnDates': ['17-10-2019', '18-10-2019', '24-10-2019' ...]}

  • 我在客户端有一个日历,用户可以在其中选择日期范围。

  • 对应于此日期范围,我需要获取所有对象。

我在想

  1. 为选定日期范围的每个条目进行呼叫,并在客户端处理汇总。问题在于,将有很多读取,因为我们将在重叠的日期范围内多次读取同一列表对象。

  2. 尝试像Elasticsearch / Algolia这样的服务进行此操作

任何建议都将非常有帮助!

谢谢!

1 个答案:

答案 0 :(得分:0)

据我所知,没有直接方法可以创建此查询。

通常,当我需要执行类似日期范围的查询时,我最终会在文档中存储较少的详细日期,例如盘点发生的月份(和/或几周)。然后,我可以查询具有用户选择的任何库存日期的文档,并在客户端进行其他过滤。

如果用户选择多个月(或几周),您可能仍需要多个查询。但这通常比在他们选择的范围内每天进行单独查询要好一些。

当然,这完全取决于使用模式。如果您的用户通常选择几天,那么可以像现在一样使用日期间隔。