Wie legt MongoDB -Sortierendeerfragenergebnisse Ergebnisse??
Die Sortiermethode nimmt das Feld und seinen zugeordneten Wert als einzelne Parameter an. Die Sortiermethode akzeptiert Parameter im JSON -Format wie field: value. Die mehreren Felder und Werte können auch in die Sort () -Methode eingegeben werden, um die sortierten Dokumente aus der Sammlung abzurufen. Betrachten Sie das folgende Dokument, in dem wir viele andere Dokumente in unsere Datenbank eingefügt haben. Der Name dieser MongoDB -Datenbank trägt den Titel "Mitarbeiter". Die Sammlung „Mitarbeiter“ enthält alle Informationen der unten gezeigten Mitarbeiter.
db.Mitarbeiter.InsertMany ([Die Sammlung „Mitarbeiter“ wird mit den bereitgestellten Dokumenten eingefügt, deren Bestätigung in der folgenden Ausgabe angezeigt wird. Wir werden dieses Sammlungsdokument verwenden, um die Funktionen der Sortierabfrageergebnisse anzuzeigen.
Beispiel Nr. 1: MongoDB -unsortierte Sammlung
Wenn die Suchabfrage mit der Find () -Methode ausgeführt wird, enthält sie immer eine ungewöhnliche Sammlung von Dokumenten. Dies kann mit den unten angegebenen Abfrageergebnissen klarer sein.
> db.Mitarbeiter.find (, _ id: 0)Hier haben wir eine Anfrage der Sammlung „Mitarbeiter“ mit der Find () -Methode. Die methode find () nimmt den leeren Parameter zusammen mit "_id: 0" an. Für ein einfacheres Ergebnis wird die Dokument -ID mit dem Operator „_id: 0“ entfernt. Standardmäßig erhalten wir ungeortierte Sammlungen, wenn die Abfrage mit der Find () -Methode durchsucht wird. Die unten abgerufene Ausgabe sind alle ungewöhnlichen Dokumente auf eine Weise, die wir zur Einfügungszeit haben.
Beispiel Nr. 2: MongoDB -Sortierabfrage führt zu Aufstiegsreihenfolge
Die sortierte Sammlung in MongoDB wird mit der Sort () -Methode verwendet, die nach der Find () -Methode platziert werden sollte. Die Sort () -Methode in MongoDB nimmt den Parameter auf, der im Feldnamen und in der Reihenfolge der Sortierung des Dokuments enthalten ist. Wir müssen „1“ als Parameter in das Feld eingeben, da wir die Dokumente in diesem speziellen Beispiel in aufsteigender Reihenfolge abrufen werden. Das Folgende in der Sortierabfrage führt zu Aufstiegsreihenfolge.
> db.Mitarbeiter.finden().sort (name: 1)Hier haben wir die Sort () -Methode nach der Suchabfrage finden. Die Sort () -Methode wird verwendet, um das Feld „Name“ in aufsteigender Reihenfolge zu sortieren, da der Wert „1“ neben dem angegebenen Feld platziert wird. Beachten Sie, dass die Sammlung nicht sortiert wird, wenn die Methode sort () nicht mit einem parametrischen Wert angegeben ist. Die Ausgabe aus der Sort () -Methode wird in der Standardreihenfolge erhalten. Die Ergebnisse der Sort () -Methode nach Namensfeld in aufsteigender Reihenfolge werden in der folgenden MongoDB -Shell angezeigt.
Beispiel 3: MongoDB -Sortierabfrage führt zu absteigender Reihenfolge
Jetzt zeigen wir die sortierenden Abfragenergebnisse des MongoDB in absteigender Reihenfolge. Diese Art von Abfrage entspricht dem obigen Beispiel, aber mit einem Unterschied. Für absteigende Reihenfolge nimmt die Sort () -Methode den Wert „-1“ gegen den Spaltennamen vor. Die Sortierabfrage führt nachstehend in absteigender Reihenfolge.
> db.Mitarbeiter.find (, "E -Mail": 1, _id: 0).sort ("E-Mail":-1)Hier beginnt die Suchabfrage mit der Find () -Methode, die das Feld "E -Mail" findet und nur die Feld "E -Mail" -Werte zurückgibt. Als Nächst. Die Ergebnisse der absteigenden Order -Sortierendeergebnisse werden nach der Ausführung in der MongoDB -Hülle abgerufen.
Beispiel Nr. 4: MongoDB -Sortierendeergebnisse für mehrere Felder
Wir können die mehreren Felder in MongoDB mit der Sort () -Methode sortieren. Die zu sortierenden Felder sollten in der Sort () -Methode deklariert werden. Die Sortierung basiert auf der Erklärung der Felder, und die Sortierreihenfolge wird von links nach rechts untersucht. Die Abfrage zum Sortieren der mehreren Felder sollte so aussehen:
> db.Mitarbeiter.find (, _ id: 0).sort ("name": 1, "Gehalt": 1)Hier wird die Sort () -Methode mit den zu sortierenden Feldern "Name" und "Gehalt" übergeben. Das Feld "Name" aus der Sammlung "Mitarbeiter" wird zunächst sortiert, weil es das erste Argumentfeld der Sort () -Methode ist. Anschließend sortiert die Sort () -Methode das zweite Argumentfeld „Gehalt“. Die Reihenfolge beider Felder ist „1“, die angibt, dass die Sortierung in aufsteigender Reihenfolge vorliegt. Die Ausgabe für mehrere Felder der Sortierabfrage wird in der angegebenen Sortierreihenfolge unten generiert.
Beispiel Nr. 5: MongoDB -Sortierendeergebnisse mit der Grenzmethode
Darüber hinaus kann sich die Sort () -Methode auch mit der Limit () -Methode kombinieren, die die begrenzten Zahlen der sortierten Dokumente nach dieser Suchabfrage ergibt. Die Methode Limit () erfordert eine Ganzzahl als Parameter, wodurch die Anzahl der Dokumente eingeschränkt wird, die in den Ausgangssatz enthalten sein sollten. Die Suchabfrage ist festgelegt, unter der zuerst das Dokument gesenkt und dann die angegebenen Grenzdokumente angezeigt werden.
> db.Mitarbeiter.find (, _ id: 0).sort ("Abteilung": 1, "dob": 1).Grenze (4).hübsch()Hier haben wir die Suchabfrage, die den Sortiervorgang für die Spalte „Abteilung“ und dann für die Spalte „DOB“ in aufsteigender Reihenfolge mit der Sort () -Methode beginnt. Sobald die Sortierung erreicht ist, haben wir die Limit () -Methode daneben platziert, um das begrenzte Dokument abzurufen. Die Methode Limit () erhält einen numerischen Wert „4“, sodass nur vier sortierte Dokumente für die Ausgabe angezeigt werden, wie im folgenden Bildschirm gezeigt:
Beispiel Nr. 6: MongoDB -Sortierende Ergebnisse mit $ Sortieraggregation
In allen obigen Beispielen haben wir die Sortierung über die Sort () -Methode von MongoDB durchgeführt. Es gibt eine andere Art, in MongoDB zu sortieren, die durch die $ -Sortier -Aggregation erreicht wird. Der $ sortierbetreiber sortiert alle Eingabedokumente, die dann die sortierten Dokumente an die Pipeline zurückgeben. Der $ Sort -Betreiber wird unten auf die "Mitarbeiter" -Kollektion angewendet.
db.Mitarbeiter.Aggregate ([$ sortieren: Gehalt: 1, _id: -1])Hier haben wir die Aggregate -Methode in der in der wir den Operator „$ sortieren“ ausgelöst, in dem wir verwenden können. Anschließend haben wir den Ausdruck des $ sortierenden Operators, der die Spalte "Gehalt" in aufsteigender Reihenfolge und die Spalte "ID" in absteigender Reihenfolge sortiert. Die auf dem Feld angewendete Aggregation $ sortiert die folgenden Ergebnisse aus:
Beispiel Nr. 6: MongoDB -Sortierergebnisse mit der Skip -Methode
Die Sort () -Methode kann auch mit der Skip () -Methode gepaart werden. Der resultierende Datensatz kann eine bestimmte Anzahl von Dokumenten haben, die mithilfe der Skip () -Methode ignoriert werden. Wie bei der Methode Limit () akzeptiert die mip () -Methode auch den numerischen Wert, der die Anzahl der zu übersprungenen Dokumente angibt. Wir haben die Sort () -Methode mit der scip () -Methode in der Sortierabfrage kombiniert.
> db.Mitarbeiter.find (, _ id: 0).sort ("Gehalt": 1).überspringen (4).hübsch()Hier haben wir die mips () -Methode neben der Sort () -Methode verwendet. Wenn die Methode sort () die Dokumente sortiert, übergibt sie die Sortierausgabe an die Sort () -Methode. Danach entfernte die Skip () -Methode die ersten vier sortierten Dokumente aus der Sammlung.
Abschluss
Der Artikel handelt von der Sortierabfrageergebnisse in MongoDB. Wir haben die Sort () -Methode für diesen Zweck verwendet, der die Datensätze in einer bestimmten Sequenz organisiert. Wir haben auch die Sort () -Methode für mehrere Sortierungen über mehrere Felder verwendet. Die Sort () -Methode wird dann mit den Methoden Limit () und Skip () zu den sortierten Dokumenten zusammengestellt.