Jak znaleźć według ID w MongoDB

Jak znaleźć według ID w MongoDB
MongoDB to typ bazy danych NoSQL, który przechowuje dane w dokumentach jako pary wartości kluczowych. MongoDB obsługuje solidne polecenia i operatory pobierania, dzięki czemu jest korzystna wśród innych DBM (systemy zarządzania bazą danych). Najczęściej stosowaną metodą MongoDB jest znajdować() Metoda, która pomaga wyświetlać dokumenty według dowolnego zamówienia lub zapytania. Podobnie jak inne systemy zarządzania bazami danych, MongoDB tworzy domyślnie unikalny identyfikator (Klucz podstawowy w większości DBMS) dla każdego dokumentu.

W MongoDB jest dość łatwa i skuteczna w interakcji z dokumentami za pomocą unikalnych identyfikatorów. znajdować() Metodę MongoDB można również zastosować do kolekcji MongoDB, odnosząc się do IDS dokumentów. Cały proces, w którym dokumenty są pobierane za pomocą unikalnych identyfikatorów w znajdować() Metoda jest nazwana jako „Znajdź () według ID”.

W tym poście serii MongoDB podamy sekwencyjny przewodnik, aby zastosować metodę Find () w celu pobierania dokumentów według identyfikatora.

Jak działa metoda identyfikatora w MongoDB

W MongoDB, Znajdź () według identyfikatora Metoda jest przedłużeniem znajdować() metoda, a zatem zastosowana pierwotna składnia jest taka sama jak w przypadku znajdować() metoda. Składnia do zastosowania Znajdź () według identyfikatora podano poniżej:

db.Nazwa kolekcji (_ id:)

W MongoDB istnieją dwie możliwości unikalnego identyfikatora:

  • Jeśli użytkownik określa wartość identyfikatora podczas wstawienia dokumentów, musi być unikalny.
  • Jeśli użytkownik nie utworzy unikalnego identyfikatora, MongoDB automatycznie generuje go wyjątkowo dla każdego dokumentu.

Jak używać metody Znajdź metodą ID w MongoDB

Przed rozpoczęciem zastosowania Znajdź według ID w kolekcji; W tym samouczku zostaną użyte następujące instancje oparte na MongoDB:

Nazwa bazy danych: "Linuxhint”To nazwa bazy danych używana w tym przewodniku

Kolekcja (s) -name: Dwie kolekcje „Linuxhint„Używana jest baza danych, która jest nazwana„rozkłady" I "pracownicy".

Przykład 1: identyfikator zdefiniowany przez użytkownika

„„rozkłady”Kolekcja zostanie użyta w tym przykładzie. Jak wspomniano wcześniej, kiedy użytkownik wstawi każdy dokument z „_ID”Pole staje się zdefiniowane przez UNITALNE ID: na przykład dokumenty wstawione w„rozkłady”Kolekcja zawiera zdefiniowane przez użytkownika identyfikatory (1,2,3… ) Jak widać na wyniku poniżej:

> db.rozkłady.znajdować().ładny()

Możesz odzyskać dowolny dokument przez odniesienie do niego ID W metodzie Find (). Na przykład polecenie napisane poniżej pomoże odzyskać dokument „_ID„Wartość 2:

> db.rozkłady.Znajdź (_ id: 2)

Podobnie możesz uzyskać dowolny inny dokument za pomocą „Znajdź według ID" metoda.

Korzystanie z metod Znajdź według identyfikatora i sortowania identyfikatorów zdefiniowanych przez użytkownika: Co więcej, z pomocą metoda znajdź () I Metoda sort (), Możesz uzyskać wyjście w kolejności rosnącej identyfikatorów.

Polecenie wspomniane poniżej pokazuje zastosowanie „znajdować" I "sortować„Metody IDS„rozkłady" kolekcja.

Notatka: Zamówienie sortowania może być „1" Lub "-1,”, Który oznacza odpowiednio rosnący lub schodzący.

> db.rozkłady.znajdować().sort (_ id: -1)

Przykład 2: Identyfikator zdefiniowany przez system

Tutaj, w tym przykładzie, „pracownicy„Kolekcja jest używana, a ta kolekcja zawiera dokumenty, które mają zdefiniowany system”IDS”Jak pokazano na poniższym wyjściu:

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

Zobaczysz, że „_ID”Pole zawiera złożony, unikalny identyfikator dla każdego dokumentu.

Aby odzyskać dowolny dokument, musisz przekazać długi identyfikator, jak pokazano w poniższym poleceniu:

> db.pracownicy.Znajdź (_ id: ObjectID ("616D7CA2CB1032DFA6345840")))

Używając metod Znajdź według identyfikatora i sortowania identyfikatorów zdefiniowanych przez system: Jak na identyfikatorze zdefiniowanym przez użytkownika; Możesz użyć metody sortowania na identyfikatorach zdefiniowanych przez system, aby uzyskać wyjście w kolejności rosnącej lub malejącej:

Polecenie napisane poniżej sortuje dokumenty „pracownicy„Kolekcja w kolejności malejącej:

> db.pracownicy.znajdować().sort (_ id: -1)

Notatka: Składnia jest taka sama, ale nazwa kolekcji jest inna, a definicja identyfikatora jest również inna.

Podczas radzenia sobie z identyfikatorem zdefiniowanym przez system, jeśli błędnie wstawiłeś niewłaściwą długość „_ID,”Następnie możesz napotkać następujący błąd:

Lub jeśli chcesz odzyskać określony system „Id's”Przez zdefiniowane przez użytkownika„ID„Polecenie zostanie wykonane, ale nie wyświetli żadnego wyjścia, ponieważ identyfikatory zdefiniowane przez użytkownika nie istnieją”pracownicy" kolekcja:

Wniosek

Metoda Find () MongoDB zawiera obszerną listę obsługiwanych operatorów i poleceń, które pomagają odzyskać dokumenty w wyrafinowanej formie. Unikalny identyfikator można użyć z metodą Find (), aby uzyskać dokumenty na podstawie ich identyfikatorów. Postępując zgodnie z tym przewodnikiem, użytkownicy Mongo mogą uzyskać dokumenty za pomocą identyfikatora tych dokumentów w metodzie Find (). Ponadto, dla lepszego zrozumienia, przedstawiono kilka przykładów, które pokazują wykorzystanie „Znajdź () według id ” Metoda w MongoDB.