在文档上撰写的内容。
JSON 表示法 |
---|
{ "updateMask": { object ( |
字段 | |
---|---|
updateMask |
本次写入中要更新的字段。 仅当操作为 |
updateTransforms[] |
更新后要执行的转换。 仅当操作为 |
currentDocument |
文档的可选前提条件。 如果设置了该属性,但目标文档未满足该属性,则写入将失败。 |
联合字段 operation 。要执行的操作。operation 只能是下列其中一项: |
|
update |
要写入的文档。 |
delete |
要删除的文档名称。格式为 |
transform |
对文档应用转换。 |
DocumentTransform
文档的转换。
JSON 表示法 |
---|
{
"document": string,
"fieldTransforms": [
{
object ( |
字段 | |
---|---|
document |
要转换的文档的名称。 |
fieldTransforms[] |
要按顺序应用于文档字段的转换列表。此字段不能为空。 |
FieldTransform
文档字段的转换。
JSON 表示法 |
---|
{ "fieldPath": string, // Union field |
字段 | |
---|---|
fieldPath |
字段的路径。如需了解字段路径语法参考信息,请参阅 |
联合字段 transform_type 。要应用于字段的转换。transform_type 只能是下列其中一项: |
|
setToServerValue |
将字段设置为给定的服务器值。 |
increment |
将指定值与字段的当前值相加。 此值必须是整数或双精度值。如果该字段不是整数或双精度类型,或者该字段尚不存在,转换会将该字段设置为指定值。如果指定值或当前字段值中有双精度值,则这两个值都将被解读为双精度值。双精度值的计算和表示法遵循 IEEE 754 语义。如果存在正/负整数溢出,则该字段将被解析为最大数量级的正/负整数。 |
maximum |
将字段设置为其当前值和指定值的最大值。 此值必须是整数或双精度值。如果该字段不是整数或双精度类型,或者该字段尚不存在,转换会将该字段设置为指定值。如果在字段和输入值是混合类型(即一个为整数,一个为双精度)时应用最大运算,则该字段将采用较大运算数的类型。如果操作数等效(例如 3 和 3.0),则该字段不会更改。0、0.0 和 -0.0 全部为零。零存储值和零输入值的最大值始终为存储值。任何数值 x 和 NaN 的最大值为 NaN。 |
minimum |
将字段设置为其当前值和指定值的最小值。 此值必须是整数或双精度值。如果该字段不是整数或双精度类型,或者该字段尚不存在,转换会将该字段设置为输入值。如果在字段和输入值是混合类型(即一个为整数,一个为双精度)时应用最小运算,则该字段将采用较小运算数的类型。如果操作数等效(例如 3 和 3.0),则该字段不会更改。0、0.0 和 -0.0 全部为零。零存储值和零输入值的最小值始终为存储值。任何数值 x 和 NaN 的最小值为 NaN。 |
appendMissingElements |
如果给定元素在当前字段值中不存在,请按顺序附加这些元素。如果该字段不是数组,或者该字段尚不存在,则首先将其设置为空数组。 在检查某个值是否缺失时,系统会将不同类型(例如 3L 和 3.0)的等效数值视为相等。NaN 等于 NaN,且 Null 等于 Null。如果输入包含多个等值值,则仅考虑第一个值。 相应的 transform_result 将为 null 值。 |
removeAllFromArray |
从该字段的数组中移除所有给定元素。如果该字段不是数组,或者该字段尚不存在,则设置为空数组。 在决定是否应移除某个元素时,系统会将不同类型(例如 3L 和 3.0)的等效数值视为相等。NaN 等于 NaN,且 Null 等于 Null。如果存在重复项,这将移除所有等效值。 相应的 transform_result 将为 null 值。 |
ServerValue
由服务器计算的值。
枚举 | |
---|---|
SERVER_VALUE_UNSPECIFIED |
未指定。不得使用此值。 |
REQUEST_TIME |
服务器处理请求的时间(精确到毫秒)。如果在事务中的多个字段(相同或不同的文档)上使用,所有字段都将获得相同的服务器时间戳。 |