MongoDB oder Abfrage

MongoDB oder Abfrage
MongoDB ist die Datenbank, die Daten speichert und auch viele Arithmetik- und Logikoperationen bietet, die auf die gespeicherten Daten angewendet werden können. Es bietet verschiedene Arten von logischen Operatoren, mit denen der $ oder den Bediener am häufigsten verwendet wird. Dieser Bediener wird verwendet, um einen Datensatz zu holen, der mindestens einem der Ausdrücke oder dem Wert in der Abfrage entspricht. Dieser Bediener wird in verschiedenen Methoden wie Find (), Update () usw. verwendet., Alles, je nachdem, was der Benutzer will. Ein weiteres Merkmal eines Bedieners ist, dass er auch für Sortierzwecke verwendet wird.”

Die grundlegende Syntax für den oder Operator ist:

$ oder: [Expression1,… ., Expressionn]

Um den oder den Betreiber in MongoDB zu implementieren, werden wir zunächst die grundlegenden Terminologien von MongoDB durchlaufen. Der allererste Schritt besteht darin, eine Datenbank zu erstellen. Die Standarddatenbank ist "Test". Wenn Sie sich nicht sicher sind, mit welchem ​​DB Sie sich angeschlossen haben, wird der Name der aktuellen Datenbank mit dem Schlüsselwort „DB“ angezeigt. Wenn Sie jedoch eine eigene Datenbank erstellen möchten, gibt es für diese Instanz eine einfache Abfrage.

>> Verwenden Sie Demo

Durch die Verwendung dieses Befehls wird die Datenbank von "Test" auf "Demo" verlagert. Sobald die neue Datenbank erstellt wurde, werden wir Daten in MongoDB in Form von Sammlungen hinzufügen. Der Ansatz, der zum Erstellen einer Sammlung verwendet wird, erfolgt über einen Befehl create. Es ist eine Funktion, auf die über die aktuelle DB aufgerufen und zugegriffen wird, und der Name der Sammlung wird in den Klammern geschrieben.

>> db.CreateCollection ('Student')

Wir haben eine Sammlung mit dem Namen "Student" erstellt. Als Reaktion darauf bestätigt das MongoDB -Terminal die Erstellung einer Sammlung, indem "OK" angezeigt wird. Jetzt können wir die Sammlung über einen Befehl einfügen hinzufügen. Wir haben 4 Zeilen hinzugefügt; In ihnen sind 4 Dokumente in allen Reihen gleich, während der 5. anders ist. Zum Zeitpunkt des Einfügungsdatens müssen Sie kein ID -Dokument bereitstellen. Wenn Sie jedoch eine bestimmte ID Ihrer Wahl angeben möchten, können Sie dieses Attribut hinzufügen.

Alle Zeilen in der Datenbank werden über den Find () abgerufen ().Pretty () Befehl.

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

Beispiel 1: Übereinstimmung mit den Werten mit zwei Dokumenten

Da wir mit der Funktionalität des oder Operators vertraut sind, haben wir mit diesem Bediener zwei Attribute in der Abfrage aufgenommen. Nach der Erkrankung möchten wir die Aufzeichnung mit 22 Jahren erhalten, und das Geschlecht sollte weiblich sein. Um die Aufzeichnung zu erhalten, werden wir einen Find () verwenden.Pretty () Befehl. Und diese Bedingungen werden im Parameter der Find () -Funktion erwähnt. Durch die Verwendung eines oder Operator. Der „oder“ -Operator hat die Optionen gegeben, die über den Befehl ausgeführt werden sollen.

>> db.Student.find ($ or: [Alter: 22, Geschlecht: "weiblich"]).hübsch ()

Wenn Sie diese Abfrage ausführen, werden Sie beobachten, dass Daten von drei Schülern abgerufen werden. Zwei haben ein Alter von 22 Jahren, während zwei als weiblich Geschlecht haben.

Beispiel Nr. 2: Übereinstimmung mit dem Wert in den verschachtelten Dokumenten

Gehen Sie für diese Ausführung zunächst das obige Bild durch, in dem alle Daten des Sammlungsschülers angezeigt werden, damit Sie über die verschachtelten Dokumente erfahren. Wie der Name angibt, sind diese Dokumente erweiterte Werte des Dokuments, da wir das Dokument „Kurse“ verwendet haben. Dieses Attribut enthält weiter Dokumente darin. Jedes Dokument enthält separate Werte, die ihnen zugewiesen wurden. Wir werden über den Dokumentnamen auf diese Werte zugreifen. Diese Art von Dokument ist bekannt als ein verschachteltes Dokument.

Abhängig von der Abfrage möchten wir die Zeilen finden, die ein Dokument entsprechen, das dem C# entspricht. Da beide Zeilen mit verschachtelten Dokumenten C# in den Kursdokumenten enthalten, werden beide Zeilendaten abgerufen.

>> db.Student.Find ($ oder: ["Kurse.Name ":" C#"]).hübsch()

Bei der Anwendung des Befehls sollte eine Sache berücksichtigt werden: Der Name des verschachtelten Dokuments wird nicht direkt in $ oder Körper geschrieben, sondern über das Basisattribut der Zeile zugegriffen. Zum Beispiel haben wir zwei verschachtelte Attribute: Name und Zeit. Wir haben jedoch nur das Namensattribut verwendet, sodass auf den Basisdokumentnamen "Kurs" zugegriffen wird. Es wird also als „Kurse“ geschrieben werden.Name ":" C#".

Bei der Ausführung des Befehls werden Sie feststellen, dass eine ganze Reihe von zwei Schülern angezeigt wird, wo das Spiel gefunden wird.

Beispiel Nr. 3: Übereinstimmung mit dem Wert in einem Array

Der oder der Bediener wird auch auf das Array eines Dokuments angewendet. In der Studentensammlung haben wir eine Reihe von Noten erstellt, die 3 Zahlen enthalten. Wie die verschachtelten Dokumente wird der „oder“ Operator auf das Array angewendet. Das Array wird mit dem Namen des Hauptdokuments zugegriffen. Es wird direkt mit dem Array -Namen zugegriffen. Wie bei diesem Befehl müssen wir diese Zeilen finden, die Markierungen von entweder 20 oder 50 haben. Der Befehl ruft die Dokumente ab, die zumindest im Array mit einem Wert übereinstimmen. Um diesen Ansatz zu erreichen, wird ein anderer Bediener verwendet, dh $ in.

>> db.Student.find ($ oder: ["marks": $ in: [20, 50]]).hübsch()

Abschluss

Durch dieses Tutorial haben wir versucht, die Implementierung eines oder Logikoperators in der MongoDB -Datenbank zu vermitteln. Ähnlich wie bei anderen Datenbanken werden „oder“ Operatoren auch in MongoDB verwendet, um Optionen in der Abfrage in Abhängigkeit von den Anforderungen bereitzustellen. Der Ergebnis wird erhalten, wenn Ausdrücke von oder Bediener dem Dokument in der Sammlung übereinstimmen. Dieser Betreiber wird auch für einfache Dokumente, verschachtelte Dokumente und die Arrays von Dokumenten verwendet. Wir haben all diese Konzepte erklärt, indem wir die Beispiele zu MongoDB implementieren.