此操作是
db.collection("users").document(uid)
与以下相同:
db.collection("users").whereEqual("uid", uid)
如果特定的uid不存在,我们是否仍要承担读取操作?这两种情况都可用吗?请注意,该文档尚未创建,无法读取任何内容。
答案 0 :(得分:2)
此代码:
db.collection("users").document(uid)
不花费任何文档读取费用。尚未阅读任何文档。它唯一要做的是构建一个DocumentReference对象,该对象可用于get()
文档(或添加侦听器)。 get()
花费阅读文档的费用。
此代码:
db.collection("users").whereEqual("uid", uid)
在调用get()
(或添加侦听器)之前,也不会花费文档阅读的费用。但是,如果您致电get()
,那么即使没有文档,也总是花费至少个文档。 documentation for pricing中对此进行了介绍:
即使您执行的每个查询都没有返回结果,对于每次执行的查询,其最低读取费用为一个文档。