Select 在 firestore 中按键最后 n 条记录?

Select last n records by key in firestore?

如何 select firestore 中集合中的最后 n 项?我正在考虑将一个新项目从实时数据库迁移到 firestore。在实时数据库中,我使用了以下代码:

ref.orderByKey().limitToLast(n);

我查看了 https://cloud.google.com/firestore/docs/query-data/order-limit-data 上的文档,他们似乎没有提到如何在 firestore 中实现这一点。我想我可以为集合的每个元素添加一个时间戳字段,然后按时间戳降序排序,但我认为应该有更简单的方法来完成此操作。

在 Firebase 实时数据库中有推送 ID 的概念,这是一个自动按时间顺序排列的键。这使得在查询中按时间顺序对节点进行排序就像您所展示的那样简单。

在 Cloud Firestore 中,没有关于何时添加文档或上次更新文档的内置元数据。如果要基于此类元数据构建查询,则必须自己在文档上设置相应的属性。