Schreibvorgang für ein Dokument.
JSON-Darstellung |
---|
{ "updateMask": { object ( |
Felder | |
---|---|
updateMask |
Die Felder, die in diesem Schreibvorgang aktualisiert werden sollen. Dieses Feld kann nur festgelegt werden, wenn der Vorgang |
updateTransforms[] |
Die Transformationen, die nach der Aktualisierung ausgeführt werden sollen. Dieses Feld kann nur festgelegt werden, wenn der Vorgang |
currentDocument |
Eine optionale Vorbedingung für das Dokument. Der Schreibvorgang schlägt fehl, wenn dies festgelegt und vom Zieldokument nicht erfüllt wird. |
Union-Feld operation . Der auszuführende Vorgang. Für operation ist nur einer der folgenden Werte zulässig: |
|
update |
Ein zu schreibendes Dokument. |
delete |
Der Name des zu löschenden Dokuments. Im Format: |
transform |
Wendet eine Transformation auf ein Dokument an. |
DocumentTransform
Die Transformation eines Dokuments.
JSON-Darstellung |
---|
{
"document": string,
"fieldTransforms": [
{
object ( |
Felder | |
---|---|
document |
Der Name des zu transformierenden Dokuments. |
fieldTransforms[] |
Die Liste der Transformationen, die in der angegebenen Reihenfolge auf die Felder des Dokuments angewendet werden sollen. Dieses Feld darf nicht leer sein. |
FieldTransform
Eine Transformation eines Felds des Dokuments.
JSON-Darstellung |
---|
{ "fieldPath": string, // Union field |
Felder | |
---|---|
fieldPath |
Der Pfad des Felds. Die Syntaxreferenz für Feldpfade finden Sie unter |
Union-Feld transform_type . Die Transformation, die auf das Feld angewendet werden soll. Für transform_type ist nur einer der folgenden Werte zulässig: |
|
setToServerValue |
Setzt das Feld auf den angegebenen Serverwert. |
increment |
Fügt den angegebenen Wert zum aktuellen Wert des Felds hinzu. Dies muss eine Ganzzahl oder ein doppelter Wert sein. Wenn das Feld keine Ganzzahl oder kein Double-Wert ist oder das Feld noch nicht vorhanden ist, wird das Feld von der Transformation auf den angegebenen Wert festgelegt. Wenn einer der angegebenen Werte oder der aktuelle Feldwert doppelt vorhanden ist, werden beide Werte als Double-Werten interpretiert. Die Doppelarithmetik und die Darstellung von Doppelwerten folgen der IEEE 754-Semantik. Bei einem Überlauf der positiven/negativen Ganzzahlen wird das Feld in die höchste positive/negative Ganzzahl aufgelöst. |
maximum |
Legt das Feld auf das Maximum des aktuellen und angegebenen Werts fest. Dies muss eine Ganzzahl oder ein doppelter Wert sein. Wenn das Feld keine Ganzzahl oder kein Double-Wert ist oder das Feld noch nicht vorhanden ist, wird das Feld von der Transformation auf den angegebenen Wert festgelegt. Wenn eine Maximal-Operation angewendet wird, bei der das Feld und der Eingabewert gemischte Typen haben (eins ist eine Ganzzahl und der andere ein Double-Wert), übernimmt das Feld den Typ des größeren Operanden. Wenn die Operanden äquivalent sind (z. B. 3 und 3,0), bleibt das Feld unverändert. 0, 0,0 und -0,0 sind alle Null. Der Höchstwert aus einem gespeicherten Wert von null und einem Eingabewert von null ist immer der gespeicherte Wert. Das Maximum eines beliebigen numerischen Werts x und NaN ist NaN. |
minimum |
Legt das Feld auf den Mindestwert des aktuellen und des angegebenen Werts fest. Dies muss eine Ganzzahl oder ein doppelter Wert sein. Wenn das Feld keine Ganzzahl oder kein Double-Wert ist oder das Feld noch nicht vorhanden ist, wird das Feld von der Transformation auf den Eingabewert festgelegt. Wenn eine Operation mit Minimum angewendet wird, bei der das Feld und der Eingabewert gemischte Typen haben (eins ist eine Ganzzahl und der andere ein Double-Wert), übernimmt das Feld den Typ des kleineren Operanden. Wenn die Operanden äquivalent sind (z. B. 3 und 3,0), bleibt das Feld unverändert. 0, 0,0 und -0,0 sind alle Null. Der Mindestwert eines gespeicherten Werts von null und eines Eingabewerts von null ist immer der gespeicherte Wert. Das Minimum aller numerischen Werte x und NaN ist NaN. |
appendMissingElements |
Hängen Sie die Elemente der Reihe nach an, wenn sie nicht bereits im aktuellen Feldwert vorhanden sind. Wenn das Feld kein Array ist oder das Feld noch nicht vorhanden ist, wird es zuerst auf das leere Array festgelegt. Gleichwertige Zahlen unterschiedlicher Typen (z. B. 3L und 3,0) gelten bei der Überprüfung auf fehlende Werte als gleich. NaN ist gleich NaN und Null ist gleich Null. Wenn die Eingabe mehrere äquivalente Werte enthält, wird nur der erste berücksichtigt. Das entsprechende transform_result ist der Nullwert. |
removeAllFromArray |
Entfernt alle angegebenen Elemente aus dem Array im Feld. Wenn das Feld kein Array ist oder das Feld noch nicht vorhanden ist, wird es auf das leere Array festgelegt. Äquivalente Zahlen der verschiedenen Typen (z.B. 3L und 3.0) gelten bei der Entscheidung, ob ein Element entfernt werden soll, als gleich. NaN ist gleich NaN und Null ist gleich Null. Dadurch werden alle entsprechenden Werte entfernt, falls es Duplikate gibt. Das entsprechende transform_result ist der Nullwert. |
ServerValue
Ein Wert, der vom Server berechnet wird.
Enums | |
---|---|
SERVER_VALUE_UNSPECIFIED |
Nicht angegeben Dieser Wert darf nicht verwendet werden. |
REQUEST_TIME |
Die Zeit, zu der der Server die Anfrage auf eine Millisekunde genau verarbeitet hat. Wird sie in einer Transaktion für mehrere Felder (identische oder unterschiedliche Dokumente) verwendet, erhalten alle Felder denselben Serverzeitstempel. |