支持的数据类型

本文介绍 Cloud Firestore 支持的数据类型。

数据类型

数据类型 排序顺序 说明
数组 按元素,如果元素相同,则按数组长度

不能包含另一个数组值。

数组按元素排序。如果元素相同,则按长度将数组排序。

例如,[1, 2, 3] < [1, 2, 3, 1] < [2]

布尔值 false < true
字节 字节顺序 最多 1048487 字节(1 MiB - 89 字节)。查询只会考虑前 1500 个字节。
日期和时间 时间顺序 当存储在 Cloud Firestore 中时,仅精确到微秒;额外的精度位会被舍弃。
浮点数 数字顺序 64 位双精度 (IEEE 754)。
地理位置点 先按纬度排序,然后按经度
整数 数字顺序 64 位,有符号
映射 按键,然后按值

表示文档中嵌入的对象。编入索引后,您可以对子字段进行查询。如果您将此值从索引中排除,则所有子字段也将从索引中排除。

始终按键顺序进行排序。例如,如果您写入 {c: "foo", a: "bar", b: "qux"},则此映射将按键排序并另存为 {a: "foo", b: "bar", c: "qux"}

映射字段按键排序,并与键值对进行比较(先比较键,再比较值)。如果第一个键值对相等,则比较下一个键值对,依此类推。如果两个映射以相同的键值对开头,则考虑映射长度。例如,以下映射按升序排列:

{a: "aaa", b: "baz"}
{a: "foo", b: "bar"}
{a: "foo", b: "bar", c: "qux"}
{a: "foo", b: "baz"}
{b: "aaa", c: "baz"}
{c: "aaa"}

Null
引用 按路径元素(集合、文档 ID、集合、文档 ID…) 例如 projects/[PROJECT_ID]/databases/[DATABASE_ID]/documents/[DOCUMENT_PATH]
文本字符串 采用 UTF-8 编码的字节顺序 最多 1048487 字节(1 MiB - 89 字节)。查询只会考虑采用 UTF-8 表示法的前 1500 个字节。

值类型排序

如果某个查询涉及的字段使用了混合类型的值,Cloud Firestore 会使用基于内部表示法的确定性排序方法。以下列表显示了该顺序:

  1. Null 值
  2. 布尔值
  3. 整数和浮点值,按数字顺序排列
  4. 日期值
  5. 文本字符串值
  6. 字节值
  7. Cloud Firestore 引用
  8. 地理位置点值
  9. 数组值
  10. Map 值

发送以下问题的反馈:

此网页
需要帮助?请访问我们的支持页面