我在Firestore中有几个文档,每个文档都包含一个用户ID映射。例如:
// Document 1
userIds: {
"1": true,
"2": true,
"3": true,
...
}
// Document 2
userIds: {
"2": true,
"3": true,
...
}
// Document 3
userIds: {
"2": true,
"3": true,
"4": true,
...
}
我想查找所有userIds
映射不包含特定用户ID的文档。我尝试使用此查询:
.where('userIds.1', isEqualTo: null)
但是,这没有得到预期的结果。通过以上查询,将返回所有文档。相反,应返回文档2和3。
我该如何实现?
答案 0 :(得分:1)
您无法查询文档中是否缺少数据。那不是Firestore索引的工作方式。索引通过在易于搜索的结构中记录值的存在来工作。它们无法存储不存在的几乎无限数量的值。如果要搜索某物,它实际上必须在已知位置具有一个值。