Co to jest agregacja w MongoDB z przykładem

Co to jest agregacja w MongoDB z przykładem
Systemy zarządzania bazami danych mają również wspólne operacje obsługiwane przez bazy danych SQL i NoSQL. Operacja agregacji jest jedna z nich i jest poparta kilkoma relacyjnymi i nierelacyjnymi bazami danych. MongoDB jest jedną z tych baz danych, które mają obsługę tej operacji. Agregacja jest kluczową operacją w każdej bazie danych, która pozwala przetwarzać rekordy danych w celu uzyskania ukierunkowanych wyników. Za pomocą agregacji użytkownicy mogą połączyć kilka podmiotów, aby utworzyć jeden znaczący byt, grupując dane.

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:

  • $ sum: To wyrażenie dodaje wartości określonego pola w dokumencie.
  • $ min: Otrzymuje minimalną wartość z odpowiednich wartości we wszystkich dokumentach.
  • $ Max: Działa tak samo jak $ min, jednak ma maksymalną wartość.
  • $ avg: To wyrażenie służy do obliczenia średniej podanych wartości w kolekcji
  • $ last: Zwraca ostatni dokument z dokumentu źródłowego
  • $ pierwszy: Służy do zwrotu pierwszego dokumentu z dokumentu źródłowego
  • $ push: To wyrażenie wprowadza wartości do tablicy w uzyskanym dokumencie (duplikaty mogą wystąpić podczas korzystania z $ push)

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:

  • grupuje dane w odniesieniu do roku ważności każdego produktu.
  • Dokumenty spadające w każdym roku będą pchane za pomocą operatora $ push.
> 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.