查询不存在地图键的 Firestore 文档

问题描述 投票:0回答:1

我在使用 Firestore 时遇到了许多限制:

  1. 不能使用多个
    not-in
  2. 您不能在同一查询中将
    not-in
    in
    array-contains-any
    or
    组合
  3. 每个数组过滤器最多只能检查 10 个值。

所以我基本上考虑改变数据结构并使用地图,因为它们可以通过

field[key]
查询。

每个文档的关键

field
不是动态的,但地图的每个
key
是动态的。

这是我的结构示例:


// the collection
animals
  // the document (random id)
  dog
    // the field (a map value)
    food: {
      key1: value1
      key2: value2
      key3: value3
    }

查询应回答的问题是: “给我每条不存在特定值的记录并且(其他约束)”

因此,我正在考虑更改该项目的堆栈。

firebase dictionary google-cloud-firestore document
1个回答
0
投票

所有 Firestore 查询都基于对用于查询的索引中存在的文档的引用。

如果文档的某个字段没有值,则该字段不会出现在该字段的索引中。

这意味着您无法查询没有您要查询的字段值的文档。

© www.soinside.com 2019 - 2024. All rights reserved.