Wie man durch ID in MongoDB findet

Wie man durch ID in MongoDB findet
MongoDB ist ein NoSQL -Datenbankstyp, der Daten in Dokumenten als Schlüsselwertpaare speichert. MongoDB unterstützt robuste Abrufbefehle und -operatoren, die es unter anderen DBMs (Datenbankverwaltungssysteme) günstig macht. Die am häufigsten verwendete Methode von MongoDB ist finden() Methode, die hilft, die Dokumente auf Bestellung oder Abfrage anzuzeigen. Wie andere Datenbankverwaltungssysteme erstellt MongoDB einen Standardwert Eindeutige ID (Primärschlüssel in den meisten DBMs) für jedes Dokument.

In MongoDB ist es recht einfach und effektiv, mit Dokumenten mit einzigartigen IDs zu interagieren. Der finden() Die Methode von MongoDB kann auch auf eine MongoDB -Sammlung angewendet werden, indem sich auf die bezieht IDS der Dokumente. Der gesamte Prozess, in dem Dokumente abgerufen werden, indem eindeutige IDs in der verwendet werden finden() Methode wird als als benannt "Find () durch ID".

In diesem Beitrag der MongoDB -Serie bieten wir eine sequentielle Anleitung zur Anwendung von Find (), um Dokumente nach IDs abzurufen.

Wie finde die Suche nach ID -Methode in MongoDB funktioniert

In MongoDB die find () durch id Methode ist eine Erweiterung von finden() Methode und daher die verwendete primäre Syntax ist die gleiche wie von finden() Methode. Die Syntax angewendet werden find () durch id wird unten angegeben:

db.Sammlungsname (_ ID:)

In MongoDB gibt es zwei Möglichkeiten für eine eindeutige ID:

  • Wenn der Benutzer den ID -Wert beim Einfügen der Dokumente definiert, muss er eindeutig sein.
  • Wenn der Benutzer keine eindeutige ID erstellt, generiert der MongoDB sie automatisch für jedes Dokument einzigartig.

So verwenden Sie die Suche nach ID -Methode in MongoDB

Vor Beginn der Anwendung von finde durch id auf einer Sammlung; Die folgenden MongoDB -basierten Instanzen werden in diesem Tutorial verwendet:

Name der Datenbank: LinuxHintIst der in diesem Handbuch verwendete Datenbankname

Sammlung (s) -name: Zwei Sammlungen von “LinuxHint"Datenbank werden verwendet, die als" als "benannt" genannt werdenVerteilungen" Und "Mitarbeiter“.

Beispiel 1: Benutzerdefinierte ID

Der "VerteilungenIn diesem Beispiel wird die Sammlung verwendet. Wie bereits erwähnt, fügen Sie beim Einfügen von Benutzern jedes Dokument mit “ein“_Ausweis”Feld Dann wird es Benutzer definierte eindeutige IDs: Zum Beispiel die in eingefügten Dokumente“VerteilungenDie Sammlung enthält benutzerdefinierte IDs (1,2,3… ) Wie in der folgenden Ausgabe zu sehen ist:

> db.Verteilungen.finden().hübsch()

Sie können jedes Dokument durch Bezugnahme auf seine abrufen Ausweis in der find () Methode. Der unten geschriebene Befehl hilft beispielsweise, ein Dokument abzurufen, das enthält “_AusweisWert 2:

> db.Verteilungen.find (_ id: 2)

In ähnlicher Weise können Sie ein anderes Dokument erhalten, indem Sie die “verwendenfinde durch id" Methode.

Verwenden von Find nach ID- und Sortiermethoden für benutzerdefinierte IDs: Darüber hinaus mit Hilfe der find () Methode Und Sort () Methode, Sie können die Ausgabe in aufsteigender Reihenfolge der IDs erhalten.

Der unten erwähnte Befehl zeigt die Anwendung der “finden" Und "Sortieren"Methoden zu IDs von"Verteilungen" Sammlung.

Notiz: Die Sortierreihenfolge kann sein “1" oder "-1,Das steht für Ascending oder Abstieg.

> db.Verteilungen.finden().sort (_ id: -1)

Beispiel 2: System definierter ID

Hier in diesem Beispiel ““Mitarbeiter"Die Sammlung wird verwendet, und diese Sammlung enthält Dokumente, die das System definiert haben"IDS”Wie in der folgenden Ausgabe gezeigt:

> db.Mitarbeiter.finden().hübsch()

Sie werden sehen, dass das “_AusweisDas Feld enthält eine komplexe, eindeutige ID für jedes Dokument.

Um ein Dokument abzurufen, müssen Sie die lange ID wie im folgenden Befehl gezeigten ID übergeben:

> db.Mitarbeiter.find (_ id: objectId ("616d7ca2cb1032dfa6345840"))

Verwenden von Finden durch ID- und Sortiermethoden für systemdefinierte IDs: Wie bei der benutzerdefinierten ID; Sie können die Sortiermethode für systemdefinierte IDs verwenden, um die Ausgabe entweder in aufsteigender oder absteigender Reihenfolge zu erhalten:

Der unten geschriebene Befehl sortiert die Dokumente von “MitarbeiterSammlung in absteigender Reihenfolge:

> db.Mitarbeiter.finden().sort (_ id: -1)

Notiz: Die Syntax ist gleich, aber der Sammlungsname ist unterschiedlich, und die Definition der ID ist ebenfalls unterschiedlich.

Wenn Sie sich während des Umgangs mit systemdefinierten IDs befassen, haben Sie fälschlicherweise die falsche Länge von “eingefügt“_Ausweis,Dann können Sie den folgenden Fehler begegnen:

Oder wenn Sie das definierte System abrufen möchten “ids"Von benutzerdefiniert"Ausweis„Der Befehl wird ausgeführt, zeigt jedoch keine Ausgabe an, da benutzerdefinierte IDs nicht vorhanden sind“Mitarbeiter" Sammlung:

Abschluss

Die mongoDB -Methode find () enthält eine umfangreiche Liste unterstützter Operatoren und Befehle, mit denen Dokumente in raffinierter Form abgerufen werden können. Die eindeutige ID kann mit der Find () -Methode verwendet werden, um die Dokumente basierend auf ihren IDs zu erhalten. Wenn Sie diesem Handbuch folgen, können Mongo -Benutzer die Dokumente mit der ID dieser Dokumente in der Methode Find () erhalten. Darüber hinaus werden für ein besseres Verständnis einige Beispiele bereitgestellt, die die Verwendung des “zeigen“find () durch id ” Methode in MongoDB.