Utwórz kolekcję w bazie danych
Zacznij od stworzenia nowej kolekcji w swoim MongoDB, jeśli nie masz. Kolekcja jest niezbędna do wykonywania dowolnej operacji w rekordach bazy danych w MongoDB. Ponadto kolekcja musi mieć już włożony co najmniej 1 dokument przed zastosowaniem do niego dowolnego polecenia. Dlatego już stworzyliśmy kolekcję w naszej bazie danych MongoDB. Nazwaliśmy go „manekinem” w naszej bazie danych „testowych”, których będziemy używać w zapytaniach.
Test> Pokaż kolekcjeAtrapa
Podczas pracy z MongoDB musisz mieć rekordy do korzystania z operatora „Rand”. Polecenie wymienione poniżej zostało wykorzystane z „DB.Atrapa.FINK () ”funkcja używana do pobierania wszystkich dokumentów z kolekcji„ manekina ”. To polecenie zwraca wszystkie dokumenty w kolekcji, w tym ich unikalne pole „_id”, a także inne pola, takie jak „miasto”, „liczba” i „desc”. Pozwala to użytkownikowi przeglądać dane przechowywane w kolekcji i podejmować decyzje dotyczące pracy z nim.
Test> db.Atrapa.znajdować()Przykład nr 01: $ Rand Operator
Zacznijmy od użycia polecenia MongoDB, która używa metody Agregate () w kolekcji o nazwie „Manekin” w bazie danych „Test”. Metoda agregate () służy do przetwarzania danych z kolekcji i zwracania obliczonych wyników. Polecenie korzysta z operatora projektu, który służy do przekształcania dokumentów w rurociągu. I tworzy nowe pole o nazwie „losowe”, które przypisuje się wynik operatora $ rand.
Operator $ rand generuje liczbę losową od 0 do 1 (włącznie) dla każdego rekordu w kolekcji. Następujący operator $ rand wskazuje, że operatorowi nie są przekazywane żadne argumenty, więc wygeneruje liczbę losową bez żadnych konkretnych ograniczeń. Dane wyjściowe jest szeregiem dokumentów JSON w kolekcji „manekina”, z których każdy zawiera pole „_id” i pole „losowe”. Pole „losowe” zawiera liczbę losową między wartościami od 0 do 1 lub typu pływakowego, które zostały wygenerowane przez operator $ RAND dla wszystkich 5 rekordów pokazanych również na wyniku poniżej:
Test> db.Atrapa.agregate ([$ projekt: land land: $ rand: ])))Przykład nr 02: Korzystanie z $ Rand Operator z $ multiply operator
Pierwszy przykład ilustruje użycie operatora „rand” w MongoDB wyłącznie w kolekcji. Teraz będziemy go wykorzystywać w połączeniu z operatorem wielokrotności. Do tego celu używaliśmy zapytania poniżej. Zaczyna się od użycia funkcji agregatów z $ scena projektu i losowym operatorem. Tym razem operator mnożenia został zastosowany do operatora „$ rand” lub wartość, którą mamy od operatora „rand”, jest mnożona przez 10, aby wygenerować liczbę losową między 0 a 10 dla każdego dokumentu. Poniższe dane wyjściowe pokazuje szereg wszystkich dokumentów w kolekcji „manekin”, każdy z unikalnym identyfikatorem i nowym pole o nazwie losowo, które będzie utrzymywały wygenerowane liczby losowe między 0 a 10 i.mi., platforma.
Test> db.Atrapa.agregate ([$ projekt: land land: $ mnożyć: [$ rand: , 10]]))))Przykład nr 03: $ Rand Operator z operatorem „$ floor
Ostatnie polecenie ilustruje użycie operatora „Rand” z operatorem „pomnóż” do generowania liczb losowych typu pływakowego. Tym razem opracujemy, jak generować liczby typu liczb całkowitych za pomocą operatora „RAND” w połączeniu z operatorem „podłogowym” MongoDB. Dlatego poniższe instrukcje zostały wykonane w powładzie MongoDB w celu wytworzenia liczb losowych liczb całkowitych dla każdego rekordu w kolekcji „manekin”. Tym razem losowy operator jest mnożony przez 10, aby wygenerować liczbę losową między 0 a 10 dla każdego dokumentu. Następnie operator podłogi jest nakładany do zaokrąglenia liczby losowej do najbliższej liczby całkowitej.
Dane wyjściowe jest szeregiem wszystkich dokumentów w kolekcji, każdy z własnym unikalnym obiektem, właściwością miasta i nową właściwością o nazwie Random, która pomieści wygenerowany losowy numer liczby całkowitych od 0 do 10, jak pokazano na podstawie wyjścia instrukcji również.
Test> db.Atrapa.agregate ([$ projekt: miasto: 1, losowo: $ floor: $ mnożyć: [$ rand: , 10]]))Przykład nr 04: $ Rand Operator z $ Floor Operator
Na powyższych ilustracjach pomnożyliśmy losowo wygenerowane wartości z 10 lub nic, aby wpuścić je w formie typu pływaka lub przekształcić je na wartość całkowitą. Ale w tym przykładzie pomnożymy nasze losowo wygenerowane wartości pływakowe z nieco większą liczbą, która wynosi 5000. W ten sam sposób polecenie użyte w powyższych przykładach zostało tutaj wykorzystane z niewielką zmianą. Operator „pomnóż” mnoży liczbę losową wygenerowaną przez operator $ rand przez 5000, aby zwiększyć zakres liczby losowej. Operator „podłogi” uzupełnia liczbę wygenerowaną przez $ Multiply Operator do najbliższej liczby całkowitej. Wyjście tej instrukcji poniżej pokazuje 5 rekordów na ekranie powłoki MongoDB z nową właściwością, która zawiera losową liczbę całkowitą między 0 a 5000 w następujący sposób:
Test> db.Atrapa.Aggregate ([$ projekt: miasto: 1, Random: $ floor: $ mnożyć: [$ rand: , 5000]]))Wniosek
Omówiliśmy definicję „losowego” operatora w MongoDB. Omówiliśmy także jego zastosowania w wierszu poleceń MongoDB. Następnie wypróbowaliśmy 4 z różnych przykładów, aby zademonstrować jego zastosowanie wraz z innymi operatorami. Polecenia powyżej pokazują, jak korzystać z funkcji agregacji MongoDB i różnych operatorów, takich jak $ rand, $ mnożenie i $ floor, aby manipulować danymi w kolekcji i generować nowe właściwości z liczbami losowymi.