Sparse-Index in MongoDB
In MongoDB ist es nicht zwingend erforderlich, dass alle Dokumente die gleichen Felder enthalten.
Wenn Sie nun alle Dokumente in einer MongoDB-Sammlung abrufen möchten, die nur das angegebene Feld enthalten, müssen Sie möglicherweise ein gemeinsames Feld als Index angeben. Dieser Begriff ist als Sparse-Index bekannt.
In diesem Artikel werden wir den Sparse-Index in MongoDB besprechen. Außerdem werden wir ein relevantes Beispiel mit einer Erklärung bereitstellen, um das Thema zu vereinfachen.
Sparse-Index in MongoDB
Die Besonderheit des Sparse Index besteht darin, dass er nur Dokumente mit dem angegebenen indizierten Feld enthält, auch wenn der Wert des indizierten Felds null
ist. Wenn ein Dokument das indizierte Feld nicht enthält, wird dieses Dokument übersprungen.
Er wird Sparse-Index genannt, da das indizierte Feld nicht alle Dokumente einer Sammlung enthält.
Erstellen Sie einen Sparse-Index in einer MongoDB-Sammlung
Um einen Sparse-Index in einer MongoDB-Sammlung zu erstellen, müssen wir die Methode createIndex()
verwenden. Das allgemeine Format für diese Methode ist unten dargestellt:
db.Your_Collection.createIndex({ "Field": 1 }, { sparse: true })
In unserem Beispielbefehl unten erstellen wir einen Sparse-Index mit dem Feld Email
in einer Sammlung mydata
. Der Befehl lautet wie folgt:
db.mydata.createIndex({ "Email": 1 }, { sparse: true })
Es ist sehr wichtig zu wissen, dass beim Erstellen eines Sparse-Index und einer darauf basierenden Abfrage möglicherweise einige der Dokumente aus der Sammlung übersprungen werden.
Hinweis: Bitte überprüfen Sie, ob Sie sich in der richtigen Sammlung befinden. Um eine bestimmte Sammlung einzuschalten, verwenden Sie den Befehl
use YourDB
; Andernfalls wird ein Fehler ausgegeben.
Bitte beachten Sie, dass die Befehle in diesem Artikel für die MongoDB-Datenbank gelten und auf der MongoDB-Konsole ausgeführt werden müssen.
Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.
LinkedIn