Datenbanksammlung erstellen
Wir haben die MongoDB -Shell gestartet und alle verfügbaren Datenbanken über die Abfrage „Show DBS“ von MongoDB angezeigt. Die Ausgabe dieser Anweisung zeigt 3 integrierte Datenbanken, während die Dummy-Datenbank „Test“ bereits verwendet wird.
Test> DBS anzeigenWenn Sie eine bestimmte Datenbank verwenden möchten, führen Sie die Anweisung „Verwenden“ zusammen mit dem Datenbanknamen aus und verwenden die bestimmte Datenbank in einem Moment.
Test> Test verwendenNachdem wir uns im Arbeitsbereich der „Test“ -Datenbank bewegt haben, dürfen wir Kollektionen darin erstellen. Daher erstellen wir eine Sammlung mit dem Namen "Order" in dieser "Test" -Datenbank mithilfe der Funktion "createCollection" in der Anweisung. Die Abfrage zum Erstellen einer Sammlung zusammen mit ihrer Ausgabe wurde nachstehend demonstriert.
Test> db.CreateCollection ("Order")Verwenden Sie die angezeigte Abfrage, um alle Sammlungen der "Test" -Datenbank auf der MongoDB -Shell aufgeführt zu erhalten, und Sie erhalten auch die Auflistung "Order", die dort aufgeführt sind.
Test> Sammlungen anzeigenFügen Sie Dokumente zur Sammlung ein
Nachdem die Sammlung „Order“ erstellt wurde, können wir sie nicht leer lassen, da wir an Dezimalpunkten arbeiten müssen, um den runden Bediener von MongoDB zu nutzen. Daher müssen wir mindestens ein Feld einfügen, das Dezimalpunktwerte enthält. Wir haben also die InsertMany -Funktion in der Anweisung aus dem Namen einer Sammlung „Order“ versucht, insgesamt 3 Dokumente einzulegen. Jedes Dokument enthält 3 Felder i.e., Das Feld "Titel" des Zeichenfolge Typ, das Feld "Preis" des Ganzzahltyps und das Feld "Steuer" des Float -Typs. Das Steuerfeld enthält Werte mit 1 oder mehr schwimmenden Punkten.
Test> db.Befehl.InsertMany ([Titel: "Pizza", Preis: 4500, Steuer: 99.5,Nachdem wir diese 3 Dokumente in die Sammlung „Order“ der Datenbank eingefügt haben. Dazu werden wir die „Find“ -Funktion von MongoDB abwerfen, der den Namen einer Sammlung „Order“ in der Anweisung vorausgeht. Verwenden Sie im Argument Curly -Klammern „“, um die Dokumente dieser Sammlung anzuzeigen, ohne einen anzugeben. Die Ausgabe für diese Anweisung zeigt insgesamt 3 Dokumente darunter.
Test> db.Befehl.finden()Beispiel # 01:
Jetzt, da wir mit den Voraussetzungen und der Einrichtung der Datenbank fertig sind, werden wir den runden Operator in der MongoDB -Shell -Befehl verwenden, um die Dezimalwerte in ganze Zahlen umzuwandeln. Da wir nur ein „Steuer“ -Feld haben, das die Dezimalwerte enthält, werden wir nur den runden Betreiber darauf anwenden. Um den runden Operator zu verwenden, müssen wir die Aggregate () -Funktion von MongoDB in der Anweisung verwenden. Diese Anweisung startet seine Argumente mit dem Betreiber „Projekt“, gefolgt vom runden Bediener.
Sie können das Feld auch benennen, damit die Ausgabe für Dezimalpunktwerte i angezeigt werden soll.e., abgerundete Werte. Anschließend muss der Bediener „Runde“ den Namen eines Feldes enthalten, das zusammen mit der Gesamtzahl der Dezimalpunkte aktualisiert werden soll, die es abgerundet werden soll. In unserem Fall haben wir alle "Steuer" -Feldwerte um 1 abgerundet und die geänderten Werte in die Ausgabe erhalten. Diese Werte enthalten jetzt 1 Dezimalpunktwert: 99.5, um 99 zu bleiben.5 Da es nur 1 Dezimalpunkt hat, 49.56 bis 49.6 nach Abrundung von 6 und 55.25 bis 55.2.
Test> db.Befehl.Aggregate ([$ project: rundEdValue: $ rund: ["$ steuer", 1]])Wenn Sie die Funktion für Find () ausführen, um das Feld „Steuer“ aller Dokumente zu sehen, werden Sie feststellen, dass die Datensätze in der Sammlung nicht aktualisiert werden.
Test> db.Befehl.finden()Wenn Sie eine ganze Zahl anstelle eines Dezimalpunktwerts erhalten möchten, können Sie die Gesamtzahl der Dezimalpunkte „0“ in der Abfrage verwenden. Daher haben wir denselben Anweisungen für das Feld „Steuer“ aktualisiert und 1 durch 0 ersetzt. Nachdem wir die Gesamtfunktionsabfrage ausgeführt haben, haben wir die gesamten Zahlenwerte für das Feld „Steuer“ aller 3 Dokumente aus der Erhebung „Order“ I.e., 99.5 bis 100, 49.56 bis 50 und 55.25 bis 55.
Test> db.Befehl.Aggregate ([$ Project: RoundedValue: $ Round: ["$ Tax", 0]])Wenn wir nun den gleichen Find () -Funktionsanweis in der MongoDB -Shell ausführen, haben wir die gleiche Ausgabe wie in der obigen Abbildung I.e. Keine Änderung, weil die Runde nur zur Laufzeit funktioniert.
Test> db.Befehl.finden()Beispiel # 02:
Nutzen wir eine andere Möglichkeit, den runden Operator in der MongoDB -Schale zu nutzen, um die Dezimalpunktwerte i abzurunden.e., Ziemlich gleichen mit ein wenig Unterschied in der Platzierung von Operatoren und Argumenten. Innerhalb der Gesamtfunktion setzen Sie die Argumente im selben Array -Format ab der Verwendung des Projektbetreibers auf. Wir werden den Namen eines Feldes verwenden, das aktualisiert wird, und den Status als „1“ festlegen, um seinen tatsächlichen Wert anzuzeigen, der sich derzeit in der Sammlung befindet.
Dann werden wir ein neues Feld namens "Wert" hinzufügen, gefolgt vom Rundenbetreiber und dem Namen eines Feldsteuer. Es wird alle Dezimalpunktwerte in eine ganze Zahl umwandeln, nachdem die Dezimalpunkte am Ende abgerundet werden. Die Ausgabe zeigt die ursprünglichen Feldwerte „Steuer“ zusammen mit den aktualisierten abgerundeten Werten im Feld „Wert“.
Test> db.Befehl.Aggregate ([$ project: steuer: 1, Wert: $ rund: ["$ steuer"]])Abschluss
Nachdem wir das Konzept der Abrundung der Dezimalwerte im Bereich der Mathematik erörtert haben, haben wir besprochen, wie der „runde“ Operator von MongoDB abgeschaltet werden kann, um die Werte um mehrere Punkte abzurunden. Um die Verwendung des runden Operators in MongoDB zu löschen, haben wir zwei Beispiele gezeigt, die die Gesamtfunktion enthalten, die den runden Operator verwendet. Mit diesen Beispielen haben wir die Werte zur Laufzeit um 1 und 2 Punkte abgerundet, während wir auch gesehen haben, dass die Verwendung des runden Operators den tatsächlichen Wert in der Sammlung nicht ändert.