MongoDB lub zapytanie

MongoDB lub zapytanie
"MongoDB to baza danych, która przechowuje dane, a także oferuje wiele arytmetyki i operacje logiczne, które należy zastosować do przechowywanych danych. Zapewnia różne rodzaje operatorów logicznych, z którymi $ lub operator jest najczęściej używany. Ten operator służy do pobrania rekordu, który pasuje do co najmniej jednego z wyrażeń lub wartości w zapytaniu. Ten operator jest używany w różnych metodach, takich jak Find (), aktualizacja () itp., Wszystko w zależności od tego, czego chce użytkownik. Inną cechą operatora jest to, że jest on również używany do sortowania."

Podstawową składnią dla operatora lub jest:

$ lub: [Expression1,… ., Expressionn]

Aby zaimplementować OR w MongoDB, najpierw przejdziemy przez podstawowe terminologie MongoDB. Pierwszym krokiem do tego jest utworzenie bazy danych. Domyślna baza danych to „test”. Jeśli nie jesteś pewien, do którego DB się podłączyłeś, używając słowa kluczowego „DB”, zostanie wyświetlona nazwa bieżącej bazy danych. Ale jeśli chcesz utworzyć własną bazę danych, istnieje proste zapytanie do tej instancji.

>> Użyj demo

Korzystając z tego polecenia, baza danych zostanie przeniesiona z „testu” na „demo”. Po utworzeniu nowej bazy danych dodamy dane w MongoDB w formie kolekcji. Podejście zastosowane do utworzenia kolekcji odbywa się za pośrednictwem polecenia Utwórz. Jest to funkcja wywoływana i dostępna przez bieżącą DB, a nazwa kolekcji jest zapisywana w nawiasach.

>> db.CreateCollection („Student”)

Stworzyliśmy kolekcję o nazwie „Student”. W odpowiedzi terminal MongoDB potwierdza tworzenie kolekcji, wyświetlając „OK”. Teraz możemy dodać dane do kolekcji za pośrednictwem polecenia Insert. Dodaliśmy 4 wiersze; W nich 4 dokumenty są takie same we wszystkich rzędach, podczas gdy 5. jest inny. Nie musisz podawać dokumentu identyfikatora w momencie wstawienia danych, ponieważ unikalna wartość jest przypisywana mu przez MongoDB. Ale jeśli chcesz podać dowolny wybrany identyfikator, możesz dodać ten atrybut.

Wszystkie wiersze w bazie danych są pobierane przez Find ().Pretty () polecenie.

>> db.student.znajdować().ładny()

Przykład nr 1: Dopasuj wartości za pomocą dwóch dokumentów

Jak znamy funkcjonalność operatora OR, dlatego wzięliśmy dwa atrybuty w zapytaniu z tym operatorem. Według stanu chcemy uzyskać rekord w wieku 22 lat, a płeć powinna być żeńska. Aby uzyskać rekord, użyjemy Find ().Pretty () polecenie. I te warunki zostaną wymienione w parametrze funkcji FINK (). Korzystając z operatora OR, oczywiste jest, że wynikiem będą rzędy, które zawierają pierwszy stan wieku lub drugi warunek płci, a także oba. Operator „lub” podał opcje, które należy wykonać za pośrednictwem polecenia.

>> db.student.Znajdź ($ lub: [wiek: 22, płeć: „żeńska”]).ładny ()

Po wykonaniu tego zapytania zauważysz, że dane trzech uczniów są pobierane; Dwa mają wiek równy 22, podczas gdy dwa mają płeć jako żeń.

Przykład nr 2: Dopasuj wartość w zagnieżdżonych dokumentach

W przypadku tego wykonania najpierw przejdź przez obraz załączony powyżej, w którym wyświetlane są wszystkie dane studenta zbioru, aby dowiedzieć się o zagnieżdżonych dokumentach. Jak wskazuje nazwa, dokumenty te są rozszerzonymi wartościami dokumentu, ponieważ użyliśmy dokumentu „kursy”. Ten atrybut zawiera w nim dokumenty. Każdy dokument zawiera osobne wartości przypisane. Uzyskamy dostęp do tych wartości za pomocą nazwy dokumentu. Ten rodzaj dokumentu jest znany jako zagnieżdżony dokument.

W zależności od zapytania chcemy znaleźć wiersze, które mają dokument równy C#. Ponieważ oba wiersze posiadające zagnieżdżone dokumenty zawierają C# w dokumentach kursu, dane obu wierszy zostaną pobrane.

>> db.student.Znajdź ($ lub: ["kursy.nazwa ":" c#"]).ładny()

Podczas stosowania polecenia należy pamiętać o jednej rzeczy: nazwa zagnieżdżonego dokumentu nie zostanie napisana bezpośrednio w Body lub Body, ale będzie dostępny za pośrednictwem podstawowego atrybutu wiersza. Na przykład mamy dwa zagnieżdżone atrybuty: nazwa i czas. Ale użyliśmy tylko atrybutu nazwy, więc można go uzyskać za pomocą podstawowej nazwy dokumentu, który jest „kursem”. Tak więc zostanie napisane jako „kursy.Nazwa ”:„ C#”.

Po wykonaniu polecenia zobaczysz, że cały rząd dwóch uczniów zostanie wyświetlony tam, gdzie zostanie znaleziony mecz.

Przykład nr 3: Dopasuj wartość w tablicy

Operator lub jest również stosowany do tablicy dokumentu. W kolekcji studentów stworzyliśmy szereg znaków zawierających 3 liczby. Podobnie jak zagnieżdżone dokumenty, operator „lub” zostanie zastosowany do tablicy. Dostęp do tablicy będzie dostępna z nazwą głównego dokumentu. Dostęp do niego będzie dostępny bezpośrednio za pomocą nazwy tablicy. Jak w tym poleceniu, musimy znaleźć te rzędy, które mają oceny 20 lub 50. Polecenie odzyska te dokumenty, które będą pasować do jednej wartości przynajmniej w tablicy. Aby osiągnąć to podejście, stosuje się inny operator, czyli $ w.

>> db.student.Znajdź ($ lub: [„Marks”: $ in: [20, 50]])).ładny()

Wniosek

W tym samouczku staraliśmy się przekazać implementację operatora lub logicznego w bazie danych MongoDB. Podobnie jak w innych bazach danych, operatorzy „lub” są również używane w MongoDB do zapewnienia opcji w zapytaniu w zależności od wymagań. Wynikowy jest uzyskiwany, jeśli jakiekolwiek wyrażenia lub operatora pasują do dokumentu w kolekcji. Ten operator jest używany w prostych dokumentach, zagnieżdżonych dokumentach i tablicy dokumentów. Wyjaśniliśmy wszystkie te koncepcje, wdrażając przykłady na MongoDB.