Hvordan bruke distinkt tellespørsmål i MongoDB

Hvordan bruke distinkt tellespørsmål i MongoDB
MongoDB er en NoSQL -database følger ikke hentingsmekanismen til tradisjonelle databaser. Den har sitt eget MongoDB Query Language (MQL) som inneholder en omfattende liste over metoder og kommandoer for å lagre og hente dokumenter i MongoDB. Et av hentingsspørsmålene er å vise det forskjellige antallet dokumenter i en bestemt samling.

Den distinkte tellespørringen er nyttig når du har hundrevis av dokumenter i en samling, og du vil finne det totale antallet distinkte dokumenter i den samlingen. I dagens innlegg av MongoDB Tutorial -serien har vi beskrevet det grunnleggende konseptet med distinkt tellespørsmål og dens anvendelse i MongoDB.

Hvordan fungerer distinkte tellinger

Hovedformålet med å telle distinkte dokumenter er å unngå duplisering som kan konsumere tid og ressurser mens du spør. Syntaksen til den distinkte metoden er gitt nedenfor:

db.Samlingsnavn.distinkt("", "", "").lengde

Ved å bruke den ovennevnte syntaks, blir de distinkte feltene hentet ved å bruke distinkt() metode mens “.lengde”Vil telle antall felt som er returnert av distinkt() metode.

Forutsetninger

Det er noen få MongoDB-baserte Ubuntu-forekomster som må være klare til å komme til øvelsen. For eksempel må følgende ting du sørge for:

Database: En gyldig MongoDB -database er pålagt å være på Ubuntu. For eksempel bruker vi en database som heter “Linuxhint“.

Samling: Etter databasen er en samling nødvendig og må være tilknyttet databasen din. Samlingsnavnet som brukes i denne guiden er "bærbare datamaskiner“.

Den kommende delen viser bruken av den distinkte tellemetoden i MongoDB.

Hvordan bruke distinkt tellemetode i MongoDB

La oss se på innholdet i "bærbare datamaskiner”Samling:

> DB.bærbare datamaskiner.finne().ganske()

Eksemplene i denne guiden vil bli praktisert på dataene vist ovenfor.

Eksempel 1: Få de distinkte feltnavnene i "Cat" -feltet

I dette eksemplet blir den distinkte () metoden brukt på “Katt”Felt og det vil returnere navnene på forskjellige felt i“bærbare datamaskiner”Samling. For dette har vi utført følgende kommando i MongoDB Shell.

> DB.bærbare datamaskiner.distinkt ("katt")

Som det observeres at “distinkt()”Metode viser bare navnene på forskjellige felt.

Eksempel 2: Teller antall distinkte verdier i "katt" -felt

Med henvisning til eksemplet over, vil vi bruke den nedenfor nevnte kommandoen til å telle antall distinkte felt i “Katt”Felt av“Linuxhint”Samling.

> DB.bærbare datamaskiner.distinkt ("katt").lengde

Eksempel 3: Bruke en spørringstilstand

I dette eksemplet vil den distinkte metoden bli brukt med spørringstilstanden, og i en slik situasjon er det bare disse verdiene som er returnert som er forskjellige så vel som samsvarer med spørringstilstanden. For eksempel vil den nedenfor nevnte kommandoen gi deg tellingen av distinkte verdier i "Gjøre”Felt der tilstanden må matche [ Katt: “Gaming ' ]:

> DB.bærbare datamaskiner.distinkt ("make", cat: "gaming").lengde

Det kan sees fra utgangen at det er “4”Distinkte felt som har et“Gjøre”Felt og i de“Katt" fyrstikker "Spill“.

Eksempel 4: Teller antall distinkte verdier i array -feltet

Gjøre”Felt i“bærbare datamaskiner”Samling er en matrise som inneholder produsentens navn i den. For eksempel vil den nedenfor nevnte kommandoen telle antall distinkte verdier i den:

> DB.bærbare datamaskiner.distinkt ("lage").lengde

Eksempel 5: Teller antall distinkte verdier i et numerisk felt

Den distinkte metoden kan også brukes på numeriske datatyper i MongoDB. Som i "bærbare datamaskiner”Samling; det er et felt "Pris”Og verdiene som er lagret tilhører“dobbelt" data-type. Kommandoen skrevet nedenfor vil telle antall distinkte verdier i "Pris" felt.

> DB.bærbare datamaskiner.distinkt ("pris").lengde

Konklusjon

MongoDB henter dokumenter som alle andre database. I denne artikkelen i MongoDB -serien har du lært å telle distinkte feltverdier og deres lengde også. Dokumentene som hentes telles ved hjelp av .lengde utvidelse av den distinkte metoden til mongoDB. I tillegg kan den distinkte tellingen brukes på alle slags datatype som støttes av MongoDB.