W bazach danych istnieją scenariusze, w których musisz zaktualizować nazwę pola w istniejącym dokumencie bez odtwarzania całego dokumentu.
W tym poście omówimy, jak używać operatora $ Zmień nazwy, aby ustawić nową nazwę dla istniejącego pola.
Wskakujmy.
Składnia operatora
Poniżej pokazuje składnię operatora $ REMAME w MongoDB:
$ Zmień nazwę:: , :
Operator przyjmuje istniejące pole i przypisuje nową określoną nazwę.
Nazwa docelowa musi różnić się od nazwy źródła. Możesz użyć notacji kropkowej, aby zmienić nazwę pola w wbudowanym dokumencie lub tablicy.
Spójrzmy na prosty praktyczny przykład, aby lepiej zrozumieć, jak działa operator $ Zmień nazwę.
Praktyczny przykład
Zacznijmy od utworzenia kolekcji przykładowej i dodaj przykładowe dokumenty, jak pokazano w następującym zapytaniu:
db.CreateCollection („Produkty”)
Dodaj przykładowe dokumenty:
db.produkty.INSERTMANY ([_id: 1, nazwa_ produktu: „produkt_1”, cena: 100, Qty: 78, _id: 2, nazwa_produktu: „produkt_2”, cena: 4500, Ilość: 344, _id: 3, Product_name: „Product_3”, cena: 45, Ilość: 200]);
Teraz, gdy mamy dane testowe, możemy kontynuować i omówić, jak zmienić nazwę pola.
Przykład 1: Zmień nazwę pola za pomocą operatora $ Zmień nazwę
Poniższy przykład pokazuje, jak używać operatora $ REMAME do aktualizacji nazwy pola „Qty” do „Ilości”.
db.produkty.UpdateMny (, $ rename: „Qty”: „Ilości”)
Polecenie powinno zwrócić status potwierdzenia i liczbę aktualizacji dokumentów.
Uznany: prawda,
Wstawka: NULL,
MatchedCount: 3,
ModifiedCount: 3,
upsertedCount: 0
Możemy sprawdzić dokumenty, aby sprawdzić, czy określona nazwa pola została zaktualizowana.
Test> db.produkty.znajdować().ładny()
Dokumenty wyjściowe:
[[[
_id: 1, nazwa_produktu: „produkt_1”, cena: 400, ilość: 7800,
_id: 2, nazwa_produktu: „produkt_2”, cena: 4500, ilość: 344,
_id: 3, nazwa_produktu: „produkt_3”, cena: 45, ilość: 200
]
Przykład 2: Zmień nazwę nieistniejącego pola
Jeśli użyjemy operatora $ Zmień nazwę, aby zmienić nazwę istniejącego pola, operator nic nie robi i istnieje bez błędu.
Przykładem jest, jak pokazano następująco:
db.studenci.UpdateMny (_id: 1, $ rename: 'żona': 'małżonka')
Poprzednie polecenie jest po prostu zakończone bez wykonywania żadnych działań.
Wniosek
W tym poście zbadaliśmy, jak zmienić nazwę istniejącego pola w dokumencie MongoDB za pomocą operatora $ Zmień nazwę.
Dziękuje za przeczytanie!