Operacje agregacji składają się z kilku wyrażeń, które pomagają zgrupować dane dla znaczącego wyjścia. Na przykład laptop, komórki telefoniczne, gadżety można łączyć pod jednym jednostką, powiedzmy Technology_store. Podmioty są łączone, gdy poszczególne podmioty niczego nie reprezentują lub nie mają znaczenia.
Ten artykuł zawiera głęboki wgląd w metodę zagregowaną i wyrażenia poparte tą metodą.
Jak działa funkcja agregująca w MongoDB
Po pierwsze, w przypadku agregacji zaleca się zrozumienie funkcji łącznej; Składnia tej funkcji znajduje się poniżej:
> db.kolekcja.agregat (operation agregat)
W składni „kolekcja" I "Aggregatowa operacja”Są zdefiniowane przez użytkownika. „„kolekcja„Nazwa może być wszystkim i”Aggregatowa operacja”Można utworzyć za pomocą kilku zagregowanych wyrażeń obsługiwanych przez MongoDB. Niewiele znanych wyrażeń zagregowanych jest wymienionych poniżej:
Jak używać funkcji agregatów w MongoDB
W tej sekcji przedstawiliśmy kilka przykładów, które pomogą ci zrozumieć działanie agregacji w MongoDB.
Nazwa kolekcji użyta w tym przykładzie to „pracownicy”A zawartość w środku jest pokazana poniżej:
> db.pracownicy.znajdować().ładny()
Jak pokazuje wyjście, pracownicy mają pola: „Nazwa”, „Oznaczenie”, „dział” I "wynagrodzenie".
Przykład 1: Korzystanie z wyrażenia $ suma
Poniższa operacja agregacji zgrupuje pracowników w odniesieniu do powiązanego działu i $ sum Wyrażenie służy do zapewnienia całkowitej liczby pracowników w każdym dziale:
Jak pokazuje wyjście, że polecenie sklasyfikowało pracowników w odniesieniu do powiązanych działów:
> db.pracownicy.agregate ([$ grupa: _id: „$ dział”, total_Workers: $ sum: 1])))
Możesz grupować dane na inne sposoby; Na przykład, jeśli chcesz zdobyć liczbę pracowników w odniesieniu do ich oznaczeń; Możesz to również zrobić za pomocą komendy poniżej podania:
Wynik taki może być przydatny, aby uzyskać liczbę pracowników na różnych oznaczeniach.
> db.pracownicy.agregate ([$ grupa: _id: "$ określenie", total_Workers: $ sum: 1]))))
Przykład 2: Korzystanie z wyrażenia $ avg
W tym przykładzie kolekcja jest taka sama jak w przykładzie 1. Tutaj, $ avg Ekspresja agregacji służy do uzyskania średniej pensji w każdym dziale pracownicy kolekcja. W naszym przypadku następująca funkcja łączna obliczy średnią pensję pracowników w „pismo" I "wideo„Departamenty:
> db.pracownicy.agregate ([$ grupa: _id: „$ dział”, średnia: $ avg: „$ pensja”]))))
Przykład 3: Korzystanie z wyrażeń $ min i $ max
Możesz uzyskać minimalną pensję, określając $ min Ekspresja w metodzie agregującej: Poniżej wspomniane polecenie wydrukuje minimalną pensję pracowników w obu działach:
> db.pracownicy.agregate ([$ grupa: _id: „$ dział”, min_salary: $ min: „$ pensja”]))))
A polecenie wspomniane poniżej sprawdzi maksymalną pensję pracowników, grupując ich „Przeznaczenie" mądry:
Jak omówiono wcześniej, do obliczenia maksymalnych wartości, $ Max Używana jest operacja:
> db.pracownicy.agregate ([$ grupa: _id: „$ oznaczenie”, max_salary: $ max: „$ pensja”])))))
Przykład 4: Korzystanie z wyrażenia $ push
Ten przykład wyjaśnia użycie $ push z metodą agregowaną w MongoDB. Wyrażenie $ push zwraca dane jako wartości tablicy i jest używane do uzyskania warunkowych wyników na zgrupowanych danych. W tym przykładzie używamy kolekcji ”Tech_store”I znajduje się w nim następująca zawartość:
> db.Tech_store.znajdować()
Kolekcja zawiera listę niewielu produktów i ich daty wygaśnięcia. Polecenie napisane poniżej wykona następujące działania:
> db.Tech_store.agregate ([$ grupa: _id: exiry: $ rok: "$ exiry", itemStoExpire: $ push: produkt: "$ produkt", ilość: "$ Qty"]).ładny()
Przykład 5: Korzystanie z ostatnich wyrażeń $ i $
Istnieją jeszcze dwa wyrażenia ($ pierwszy I $ last) Można zastosować w metodzie zagregowanej. Do ćwiczenia tych metod użyjemy „Laptopy„Kolekcja zawierająca następujące dokumenty.
> db.Laptopy.znajdować()
$ pierwszy: Pierwszy operator $ służy do wydrukowania ostatniej wartości z zgrupowanych danych. Na przykład polecenie napisane poniżej zgrupuje dane zgodnie z „Produkt”Pole, a następnie $ First Operator wyświetla elementy, które zostaną wygaśnięte.
> db.Laptopy.agregate ([$ grupa: _id: „$ produkt”, itemStoExpire: $ fert: „$ exiry”])))).ładny()
$ last: Używając $ last, Możesz sprawdzić ostatnią wartość dowolnego pola w zgrupowanych danych. Na przykład poniżej wspomniane polecenie zgrupuje dane w odniesieniu do „Produkt”Pole i $ last Operator jest następnie używany do uzyskania daty ważności (występujący na końcu) każdego produktu.
> db.Laptopy.agregate ([$ grupa: _id: "$ produkt", itemStoExpire: $ last: "$ exiry"]))).ładny()
Wniosek
MongoDB ma szeroki zakres funkcji dostępnych do wykonywania określonych operacji w kompletnych kolekcjach lub konkretny dokument w kolekcji. Funkcja zagregowana jest zwykle praktykowana, aby uzyskać obliczony wynik gromadzenia poprzez grupowanie danych w celu pobrania znaczących bytów. W tym poście pouczającym poznasz podstaw koncepcji agregacji w MongoDB i wyrażeń wykorzystywanych w agregacji. Ostatecznie wykonywane są kilka przykładów agregacji, aby pokazać wdrożenie funkcji łącznej w MongoDB, a następnie ćwiczyć jej wyrażenia.