MongoDB $ Rand

MongoDB $ Rand
MongoDB ist so groß, wenn es um die Verwendung von Betreibern wie Vergleichsbetreibern, logischen Operatoren und allgemeinen Operatoren geht. Der MongoDB $ Rand -Operator wird verwendet, um einen zufälligen Wert aus einem bestimmten Bereich zurückzugeben, wie der Titel „Rand“ vorschlägt. Das Wort "zufällig" wird für alles verwendet. Der „Rand“ -Preiber von MongoDB kann in Verbindung mit anderen Operatoren in einer Abfrage verwendet werden, um Datensätze aus einer bestimmten Sammlung zufällig auszuwählen und zu ändern. Eine Verwendung des $ rand -Operators besteht darin, zufällige Datensätze abzurufen. Der $ Rand -Operator bietet eine nützliche Möglichkeit, in MongoDB -Abfragen Zufälligkeit einzuführen, und kann auf verschiedene Weise verwendet werden, um Ziele zu erreichen. In diesem Leitfaden werden wir die Verwendung des „Rand“ -Operators zum Generieren von Zufallsfelddatensätzen in der Datenbank erläutern.

Erstellen Sie die Sammlung in der Datenbank

Beginnen Sie mit der Schaffung einer neuen Sammlung in Ihrem MongoDB, wenn Sie keine haben. Die Sammlung ist ein Muss, um einen Vorgang in den Datenbankdatensätzen in MongoDB auszuführen. Außerdem muss die Sammlung über mindestens 1 Dokument enthalten sein, das bereits eingefügt wurde, bevor ein Befehl darauf angewendet wird. Daher haben wir bereits eine Sammlung in unserer MongoDB -Datenbank erstellt. Wir haben es in unserer "Test" -Datenbank "Dummy" genannt, die wir in den Abfragen verwenden werden.

Test> Sammlungen anzeigen

Dummy

Bei der Arbeit mit MongoDB müssen Sie Datensätze haben, um den „Rand“ -Berator zu verwenden. Der unten aufgeführte Befehl wurde mit dem „DB) verwendet.Dummy.Find () ”-Funktion, mit der alle Dokumente aus einer Sammlung„ Dummy “abgerufen werden können. Dieser Befehl gibt alle Dokumente in der Sammlung zurück, einschließlich ihres einzigartigen "_id" -Feldes sowie anderen Feldern wie "City", "Count" und "Desc". Auf diese Weise kann der Benutzer die in der Sammlung gespeicherten Daten anzeigen und Entscheidungen darüber treffen, wie er damit arbeitet.

Test> db.Dummy.finden()
[_id: ObjectID ("63c8a1f94ff07039aa6cdf6b"), City: 'Texas', Graf: 3, Desc: 'Midgröße City',
_id: ObjectID ("63c8a1f94ff07039aaa6cdf6c"), Stadt: 'Los Angeles', Graf: 3, Desc: 'Midgröße City',
_id: ObjectID ("63c8a1f94ff07039aaa6cdf6d"), Stadt: 'Italien', Graf: 10, Desc: 'am schönsten und überfüllt',
_id: ObjectID ("63c8a1f94ff07039aaa6cdf6e"), Stadt: 'Istanbul', Graf: 3, Desc: 'Midgröße City',
_id: ObjectID ("63c8a1f94ff07039aaa6cdf6f"), Stadt: 'Delhi', Graf: 3, Desc: 'Midgröße City']

Beispiel # 01: $ RAND -Operator

Beginnen wir mit der Verwendung des MongoDB. Die Aggregate () -Methode wird verwendet, um Daten aus Sammlungen zu verarbeiten und berechnete Ergebnisse zurückzugeben. Der Befehl verwendet den $ Project -Operator, der verwendet wird, um Dokumente in der Pipeline zu formen. Und es schafft ein neues Feld namens „zufällig“, dem das Ergebnis des $ Rand -Operators zugewiesen wird.

Der $ Rand -Operator generiert für jeden Datensatz in der Sammlung eine Zufallszahl zwischen 0 und 1 (inklusive). Der nach dem $ rand -Operator angibt, dass an den Operator keine Argumente übergeben werden. Daher generiert er eine Zufallszahl ohne spezifische Einschränkungen. Die Ausgabe ist ein JSON -Array von Dokumenten in der Kollektion "Dummy", von denen jedes ein "_id" -Feld und ein "zufälliges" Feld enthält. Das Feld „Zufall“ enthält eine Zufallszahl zwischen 0 und 1 oder Float-Typ-Werten, die vom $ Rand-Operator für alle 5 Datensätze generiert wurden, die auch in der folgenden Ausgabe angegeben sind:

Test> db.Dummy.Aggregate ([$ projekt: random: $ rand: ])
[_id: ObjectID ("63c8a1f94ff07039aa6cdf6b"), Random: 0.292593749216963,
_id: ObjectID ("63c8a1f94ff07039aa6cdf6c"), Random: 0.5529488318506414,
_id: ObjectID ("63c8a1f94ff07039aa6cdf6d"), Random: 0.10835699304362681,
_id: ObjectID ("63c8a1f94ff07039aa6cdf6e"), Random: 0.702304030840275,
_id: ObjectID ("63c8a1f94ff07039aa6cdf6f"), Random: 0.32829452437455164]

Beispiel Nr. 02: Verwenden Sie $ RAND Operator mit $ multiply -Operator

Das erste Beispiel zeigt die Verwendung des „Rand“ -Portlers in MongoDB ausschließlich auf einer Sammlung. Jetzt werden wir es in Verbindung mit dem Multiply -Operator verwenden. Wir haben die Abfrage unten für diesen Zweck verwendet. Es beginnt mit der Verwendung der Gesamtfunktion mit der $ Project -Phase und dem zufälligen Operator erneut. Diesmal wurde der Multiplikationsbetreiber auf einen „$ Rand“ -Operator angewendet, und der Wert, den wir vom „Rand“ -Operator haben, wird mit 10 multipliziert, um für jedes Dokument eine Zufallszahl zwischen 0 und 10. Die folgende Ausgabe zeigt ein Array aller Dokumente in der Sammlung „Dummy“ mit jeweils eindeutiger Bezeichner und ein neues Feld namens Random, das die generierten Zufallszahlen zwischen 0 und 10 i hält.e., schweben.

Test> db.Dummy.Aggregate ([$ project: random: $ multiply: [$ rand: , 10]])
[_id: ObjectID ("63c8a1f94ff07039aa6cdf6b"), Random: 9: 9.636797271617377,
_id: ObjectID ("63c8a1f94ff07039aa6cdf6c"), Random: 9: 9.612768242636559,
_id: ObjectID ("63c8a1f94ff07039aa6cdf6d"), Random: 9: 9.773269856209643,
_id: ObjectID ("63c8a1f94ff07039aa6cdf6e"), r Andom: 4: 4.544313454814634,
_id: ObjectID ("63c8a1f94ff07039aa6cdf6f"), Random: 3: 3.3338556824055585]

Beispiel Nr. 03: $ RAND -Bediener mit „$ Floor Operator

Der letzte Befehl zeigt die Verwendung des "Rand" -Preibers mit dem "Multiplizieren" -Preiber, um Zufallsnummern vom Typ Float zu generieren. Diesmal werden wir näher erläutern. Daher wurde die folgende Anweisung in der MongoDB -Shell ausgeführt, um die Ganzzahl -Zufallswerte für jeden Datensatz in der Sammlung „Dummy“ zu erzeugen. Diesmal wird der zufällige Operator mit 10 multipliziert, um eine Zufallszahl zwischen 0 und 10 für jedes Dokument zu generieren. Danach wird der Bodenbetreiber angewendet, um die Zufallszahl auf die nächste Ganzzahl abzurunden.

Die Ausgabe ist ein Array aller Dokumente in der Sammlung, jeweils eine eigene einzigartig sowie.

Test> db.Dummy.Aggregate ([$ project: City: 1, zufällig: $ floor: $ multiply: [$ rand: , 10]])
[_id: ObjectID ("63c8a1f94ff07039aa6cdf6b"), Stadt: 'Texas', Random: 5,
_id: ObjectID ("63c8a1f94ff07039aa6cdf6c"), Stadt: 'Los Angeles', Random: 0,
_id: ObjectID ("63c8a1f94ff07039aa6cdf6d"), Stadt: 'Italien', Random: 5,
_id: ObjectID ("63c8a1f94ff07039aa6cdf6e"), Stadt: 'Istanbul', Random: 7,
_id: ObjectID ("63c8a1f94ff07039aa6cdf6f"), Stadt: 'Delhi', Random: 5]

Beispiel Nr. 04: $ RAND -Betreiber mit $ Floor -Operator

In den obigen Abbildungen haben wir zufällig generierte Werte mit 10 oder nichts vervielfacht, um sie in ihre Float-Typ-Form zu lassen oder sie in einen ganzzahligen Wert umzuwandeln. In diesem Beispiel werden wir jedoch unsere zufällig erzeugten Float -Werte mit einer etwas größeren Figur multiplizieren, die 5000 beträgt. Genauso wurde der in den obigen Beispielen verwendete Befehl hier mit einer leichten Änderung verwendet. Der „Multiplizieren“ -Portler multipliziert die vom $ Rand -Operator generierte Zufallszahl um 5000, um den Bereich der Zufallszahl zu erhöhen. Der Bediener „Boden“ rund. Die Ausgabe dieser folgenden Anweisung zeigt 5 Datensätze auf dem Bildschirm "MongoDB Shell" mit einer neuen Eigenschaft, die eine zufällige Ganzzahl zwischen 0 und 5000 wie folgt enthält:

Test> db.Dummy.Aggregate ([$ project: City: 1, zufällig: $ floor: $ multiply: [$ rand: , 5000]])
[_id: ObjectID ("63c8a1f94ff07039aa6cdf6b"), Stadt: 'Texas', Random: 2862,
_id: ObjectID ("63c8a1f94ff07039aaa6cdf6c"), Stadt: 'Los Angeles', Random: 3688,
_id: ObjectID ("63c8a1f94ff07039aa6cdf6d"), Stadt: 'Italien', Random: 814,
_id: ObjectID ("63c8a1f94ff07039aaa6cdf6e"), Stadt: 'Istanbul', Random: 3888,
_id: ObjectID ("63c8a1f94ff07039aa6cdf6f"), Stadt: 'Delhi', Random: 2939]

Abschluss

Wir haben die Definition des „zufälligen“ Operators in MongoDB erörtert. Außerdem haben wir seine Verwendung in der MongoDB -Befehlszeile besprochen. Dann haben wir 4 der verschiedenen Beispiele ausprobiert, um seine Verwendung zusammen mit anderen Operatoren zu demonstrieren. Die obigen Befehle zeigen, wie die MongoDB -Aggregat -Funktion und verschiedene Operatoren wie $ rand, $ multiply und $ floor verwendet werden, um Daten in einer Sammlung zu manipulieren und neue Eigenschaften mit Zufallszahlen zu generieren.