Pull MongoDB

Pull MongoDB
Tablice są jednymi z najczęstszych i użytecznych typów danych w rozwoju. Podczas pracy z dokumentami MongoDB z pewnością natkniesz się na wartości tablicy.

Dlatego ważne jest, aby zrozumieć różne operacje tablicy w MongoDB i sposób, w jaki możemy je wykorzystać w twoich bazach danych.

W tym poście skupimy się na operatorze Pull MongoDB $. Ten operator pozwala usunąć wartość z istniejącej tablicy na podstawie określonego warunku.

Składnia operatora

Poniższy formularz pokazuje obsługę składni i parametrów operatora:

$ Pull: :,:,…

Następujące zachowanie dotyczy operatora $ Pull w dokumentach MongoDB:

  1. Określając warunek na elementach tablicy, które wbudowane dokumenty operator zastosuje określony warunek na każdym elemencie tablicy jako zbiór dokumentów.
  2. Jeśli określona wartość to tablica, operator usunie tylko elementy w tej wartości określonej wartości, zamówienie włącznie.
  3. Jeśli wartością do usunięcia jest dokument, operator usunie elementy z dokładnymi pola i wartości, zamów wyłącznie.

Poznajmy operatora $ Pull w praktycznym środowisku.

Praktyczny przykład

Zacznijmy od utworzenia zbioru testów i dodaj przykładowe dokumenty. Możesz użyć zapytania, jak pokazano poniżej:

db.CreateCollection („Użytkownicy”)
OK: 1

Włóż przykładowe rekordy.

db.użytkownicy.wstrząs

_id: 1,
Nazwa: „William”,
Departament: „Rozwój gry”,
Startyear: 2021,
Obsługiwane_langs: [„C ++”, „Java”, „C#”, „Python”],
Technologie: [

„Docker”: prawda,
„Poziom”: „pośredni”
,

„Ansible”: prawda,
„Poziom”: „początkujący”

],
Kraj: „Stany Zjednoczone”,
Wynagrodzenie: 160000

])

Załóżmy, że chcemy usunąć „Python” z tablicy obsługiwanych_langs, możemy uruchomić zapytanie, jak pokazano:

db.użytkownicy.UpdateMany (, $ pull: supported_langs: $ in: ["pyhon"]))

Powinno to usunąć wpis „Python” z tablicy obsługiwanej. Powstałe wyjście jest jak pokazano:


„_id”: 1.0,
„Nazwa”: „William”,
„Wydział”: „Rozwój gry”,
„Startyear”: 2021.0,
„Supported_langs”: [
„C ++”,
"Jawa",
"C#"
],
„Technologie”: [

„Docker”: prawda,
„Poziom”: „pośredni”
,

„Ansible”: prawda,
„Poziom”: „początkujący”

],
„Kraj”: „Stany Zjednoczone”,
„Wynagrodzenie”: 160000.0

Widzimy, że wpis „Python” został usunięty z dokumentu.

Aby usunąć element z szeregu dokumentów, możemy uruchomić zapytanie, jak pokazano:

db.użytkownicy.UpdateMny (, $ Pull: Technologies: „ansible”: true, „poziom”: „początkujący”))

Polecenie powyżej usunie element z tablicy technologii, która zawiera dwa dokumenty.

Powstały dokument jest jak pokazany:

db.użytkownicy.znajdować()

Wyjście:


„_id”: 1.0,
„Nazwa”: „William”,
„Wydział”: „Rozwój gry”,
„Startyear”: 2021.0,
„Supported_langs”: [
„C ++”,
"Jawa",
"C#"
],
„Technologie”: [

„Docker”: prawda,
„Poziom”: „pośredni”

],
„Kraj”: „Stany Zjednoczone”,
„Wynagrodzenie”: 160000.0

Z powyższego wyjścia możemy zweryfikować element z określonym parametrem, który został usunięty z tablicy technologii.

Wniosek

W tym artykule obejmuje podstawy pracy z operatorem $ Pull w MongoDB, umożliwiając usuwanie elementów z tablicy w danym dokumencie.