按最近日期查询文件

时间:2018-08-19 03:24:01

标签: firebase google-cloud-firestore

我有一个简单的收藏集,像这样:

enter image description here

每个文档具有以下字段:

  • actividades列表
  • acuerdo字符串
  • corte日期

我想按corte中保存的最新日期查询文档。

我想到的第一件事就是这样做:

  1. corte查询和排序集合,然后限制结果 到1
  2. 从该结果中获取corte字段。那是最近的日期
  3. 再次查询过滤corte中具有此日期的文档

这种方法正确还是有更好的方法?

我正在使用Firestore的网络版本(javascript)

2 个答案:

答案 0 :(得分:2)

这是您可以做的最好的事情,而无需更全面地了解如何填充数据,并且可能也无法对填充数据库的方式进行一些更改。但是,启用客户端持久性后,这并不是一个过于昂贵的策略,因为您的第二个查询将不会读取从第一个查询获得的(缓存的)文档。

答案 1 :(得分:1)

听起来像是对我的正确方法。正如道格所说:在这种情况下,客户端持久性可以很好地工作,以最大程度地减少带电的读取操作。

常见的替代方法是创建一个仅包含日期的文档的单独集合。但是在这种情况下,您仍然需要进行两次读取操作:一项来自日期集合,另一项来自avances集合。因此,您将不保存任何读取操作,而仅保存一些(最小)带宽。