在Firestore的Go程序包中,我可以通过执行类似的操作轻松获得ID列表
client.Collection("mycollection").DocumentRefs()
通过查询,我可以在遍历文档之前轻松过滤文档
client.Collection("mycollection").Where("x", "==", "y").Documents()
但是Query
似乎缺少获取.DocumentRefs()
的选项,是否有某种方法可以获取匹配特定查询的DocumentRefs列表,而无需实际获取所有匹配的文档(确保每个文档的读取成本)?
最重要的是,在我应用过滤逻辑以获取文档ID的受限列表之后,我想基于ID的值运行其他基于正则表达式的过滤,并且过滤后的ID列表是我的最终结果,不需要fr提取文档。
通常,建议
not将数据存储在文档的ID中以进行过滤。如果您能够预先计算文档应匹配的条件,然后将这些数据放在文档的字段中,则用例会更好地工作。还应注意,Firestore不支持正则表达式类型查询,因为这些查询无法按Firestore的要求进行大规模扩展。