Firebase is back at Google I/O on May 10! Register now

Unterstützte Datentypen

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

Auf dieser Seite werden die von Cloud Firestore unterstützten Datentypen beschrieben.

Datentypen

In der folgenden Tabelle sind die von Cloud Firestore unterstützten Datentypen aufgeführt. Es beschreibt auch die Sortierreihenfolge, die beim Vergleichen von Werten desselben Typs verwendet wird:

Datentyp Sortierreihenfolge Anmerkungen
Array Nach Elementwerten

Ein Array darf keinen anderen Array-Wert als eines seiner Elemente enthalten.

Innerhalb eines Arrays behalten Elemente die ihnen zugewiesene Position bei. Beim Sortieren von zwei oder mehr Arrays werden Arrays basierend auf ihren Elementwerten geordnet.

Beim Vergleich zweier Arrays werden die ersten Elemente jedes Arrays verglichen. Wenn die ersten Elemente gleich sind, werden die zweiten Elemente verglichen und so weiter, bis ein Unterschied gefunden wird. Wenn einem Array die zu vergleichenden Elemente ausgehen, es aber bis zu diesem Punkt gleich ist, wird das kürzere Array vor dem längeren Array angeordnet.

Beispiel: [1, 2, 3] < [1, 2, 3, 1] < [2] . Das Array [2] hat den größten ersten Elementwert. Das Array [1, 2, 3] hat Elemente gleich den ersten drei Elementen von [1, 2, 3, 1] ist aber kürzer.

Boolesch false < true
Bytes Byte-Reihenfolge Bis zu 1.048.487 Bytes (1 MiB - 89 Bytes). Bei Abfragen werden nur die ersten 1.500 Bytes berücksichtigt.
Datum (und Uhrzeit Chronologisch Bei Speicherung in Cloud Firestore nur auf Mikrosekunden genau; Jede zusätzliche Genauigkeit wird abgerundet.
Fließkommazahl Numerisch 64-Bit-Doppelpräzision, IEEE 754.
Geografischer Punkt Nach Breitengrad, dann nach Längengrad Derzeit empfehlen wir die Verwendung dieses Datentyps aufgrund von Abfragebeschränkungen nicht. Im Allgemeinen ist es besser, Längen- und Breitengrad als separate numerische Felder zu speichern. Wenn Ihre App einfache entfernungsbasierte Geoabfragen benötigt, finden Sie weitere Informationen unter Geoabfragen
Ganze Zahl Numerisch 64-Bit, signiert
Karte Nach Schlüsseln, dann nach Wert

Stellt ein in ein Dokument eingebettetes Objekt dar. Wenn indiziert, können Sie Unterfelder abfragen. Wenn Sie diesen Wert von der Indizierung ausschließen, werden auch alle Teilfelder von der Indizierung ausgeschlossen.

Die Schlüsselreihenfolge ist immer sortiert. Wenn Sie beispielsweise {c: "foo", a: "bar", b: "qux"} schreiben, wird die Karte nach Schlüssel sortiert und als {a: "bar", b: "qux", c: "foo"} .

Zuordnungsfelder werden nach Schlüssel sortiert und nach Schlüssel-Wert-Paaren verglichen, wobei zuerst die Schlüssel und dann die Werte verglichen werden. Wenn die ersten Schlüssel-Wert-Paare gleich sind, werden die nächsten Schlüssel-Wert-Paare verglichen und so weiter. Wenn zwei Karten mit denselben Schlüsselwertpaaren beginnen, wird die Kartenlänge berücksichtigt. Die folgenden Karten sind beispielsweise in aufsteigender Reihenfolge:

{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 Keiner
Referenz Nach Pfadelementen (Sammlung, Dokument-ID, Sammlung, Dokument-ID...) Beispiel: projects/[PROJECT_ID]/databases/[DATABASE_ID]/documents/[DOCUMENT_PATH] .
Textzeichenfolge UTF-8-codierte Bytereihenfolge Bis zu 1.048.487 Bytes (1 MiB - 89 Bytes). Bei Abfragen werden nur die ersten 1.500 Bytes der UTF-8-Darstellung berücksichtigt.

Reihenfolge der Werttypen

Wenn eine Abfrage ein Feld mit Werten gemischter Typen umfasst, verwendet Cloud Firestore eine deterministische Reihenfolge basierend auf den internen Darstellungen. Die folgende Liste zeigt die Reihenfolge:

  1. Nullwerte
  2. Boolesche Werte
  3. In numerischer Reihenfolge sortierte Integer- und Fließkommawerte
  4. Datumswerte
  5. Werte von Textzeichenfolgen
  6. Byte-Werte
  7. Cloud Firestore-Referenzen
  8. Geografische Punktwerte
  9. Array-Werte
  10. Werte zuordnen