Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Indizes für einzelne Felder
Einzelfeldindizes speichern Informationen aus jedem einzelnen Feld in einer Sammlung von Dokumenten. Standardmäßig haben alle Sammlungen einen Index für das _id Feld. Sie können zusätzliche Indizes hinzufügen, um wichtige Abfragen und Operationen zu beschleunigen.
Indizes für einzelne Felder sind in folgenden Fällen von Vorteil:
-
Ihre Anwendung fragt häufig Dokumente ab oder filtert sie anhand der Werte eines bestimmten Felds.
-
Sie müssen Dokumente effizient nach einem bestimmten Feld sortieren.
-
Sie möchten sicherstellen, dass ein bestimmtes Feld in allen Dokumenten einer Sammlung eindeutig ist, indem Sie einen eindeutigen Index erstellen.
Unterstützte Indexeigenschaften
| Option | 3.6 | 4,0 | 5.0 | 8.0 | Elastischer Cluster |
|---|---|---|---|---|---|
| name | Ja | Ja | Ja | Ja | Ja |
| einzigartig | Ja | Ja | Ja | Ja | Ja |
| spärlich * | Ja | Ja | Ja | Ja | Ja |
| teilweise * FilterExpression | Nein | Nein | Ja | Ja | Nein |
| ablaufen AfterSeconds | Ja | Ja | Ja | Ja | Ja |
* Die partialFilterExpression Optionen sparse und können nicht zusammen in derselben Indexdefinition verwendet werden. Wenn Sie versuchen, einen Index mit diesen Optionen zu erstellen, schlägt dies mit dem folgenden Fehler fehl:
Error in specification: cannot mix partialFilterExpression and sparse options
Einen Index für ein einzelnes Feld erstellen
Verwenden Sie die createIndex() Methode, um einen einzelnen Feldindex zu erstellen. Die Syntax lautet:db.collection.createIndex(<key>, <options>).
Der key Parameter ist ein JSON-Dokument, das das Feld und die Index-Sortierreihenfolge angibt:
{ "<field>": <1 (ascending)|-1 (descending)> }
Der options Parameter ist ein JSON-Dokument, das die Optionen für den Index angibt:
{ "name": "<name>", "unique": <true | false>, "sparse": <true | false>, "partialFilterExpression": <filter expression>, "expireAfterSeconds": <seconds before expiry> }
Beispiele für die Erstellung von Einzelfeldindizes finden Sie unter Indexeigenschaften.