如果一个集合中有大量的文档,我是否可以在不加载整个集合的情况下获得文档的计数。
db.collection('largecollection').get().then(snapshot => {
length = snapshot.size;
})
没有内置API来获取集合中文档数量的计数。因此,默认情况下,您必须下载所有文档才能计数。
正如Renaud评论的那样,常见的解决方法是保留一个单独的计数器,每次添加/删除文档时都要更新该计数器。您可以在应用程序中完成此操作,每次添加/删除文档时都用事务更新计数器。但是在服务器上这样做更可靠,比如Firebase的云函数。有关这种方法的示例,请参见functions-samples
repo。虽然该示例是针对Firebase实时数据库的,但该方法同样适用于FireStore。
另请参阅关于分布式计数器的Firestore文档部分。
我想获得firestore集合中的文档总数,我正在制作一个论坛应用程序,所以我想显示每个讨论中的当前评论量。有之类的东西吗?
在Firestore中,如何获取集合中的文档总数? 例如,如果我有 我想查询我有多少人,得到2。 我可以对 /people进行查询,然后获取返回结果的长度,但这似乎是一种浪费,特别是因为我将在更大的数据集上进行此操作。
我有一个包含10个文档的产品根集合。每个文档都有100个文档的子集合,没有其他字段。 现在如果我阅读产品收藏的文件 将收取多少次读取费用,由于我正在获取具有10个文档的产品集合的文档,我将收取10次读取费用?或者每个文档都有100个文档的子集合,因此我将收取10*100 =1000文档读取费用?
问题内容: 我有这样的台词,我想知道我实际上有几行… 有没有一种方法可以使用linux命令对它们进行计数? 问题答案: 用途: 这将输出行数: 或者,要从结果中省略,请使用: 您还可以通过管道将数据发送到: