Lag samling i databasen
Kom i gang med opprettelsen av en ny samling i mongoDB, hvis du ikke har en. Samlingen er et must å utføre enhver operasjon på databasepostene i MongoDB. Samlingen må også ha minst 1 dokument som allerede er satt inn i den før du bruker noen kommando på den. Derfor har vi allerede opprettet en samling i vår MongoDB -database. Vi kalte den "dummy" i vår "test" -database som vi skal bruke i spørsmålene.
Test> Vis samlingerDummy
Når du jobber med MongoDB, må du ha poster for å bruke "Rand" -operatøren. Kommandoen oppført nedenfor er blitt brukt med “DB.Dummy.finn () ”-funksjon som brukes til å hente alle dokumenter fra en samling“ Dummy ”. Denne kommandoen returnerer alle dokumenter i samlingen, inkludert deres unike "_id" -felt, så vel som andre felt som "City", "Count" og "Desc". Dette gjør at brukeren kan se dataene som er lagret i samlingen og ta beslutninger om hvordan de skal jobbe med den.
Test> DB.Dummy.finne()Eksempel # 01: $ RAND -operatør
La oss begynne med bruken av MongoDB -kommandoen som bruker Aggregate () -metoden på en samling som heter "Dummy" i "Test" -databasen. Aggregate () -metoden brukes til å behandle data fra samlinger og returnere beregnede resultater. Kommandoen bruker $ prosjektoperatøren, som brukes til å omforme dokumenter i rørledningen. Og det oppretter et nytt felt kalt "tilfeldig" som tildeles resultatet av $ RAND -operatøren.
$ RAND -operatøren genererer et tilfeldig tall mellom 0 og 1 (inkluderende) for hver post i samlingen. Etter $ RAND -operatøren indikerer at det ikke blir gitt noen argumenter til operatøren, så den vil generere et tilfeldig tall uten noen spesifikke begrensninger. Utgangen er en JSON -rekke dokumenter i "Dummy" -samlingen, som hver inneholder et "_id" -felt og et "tilfeldig" felt. Det "tilfeldige" feltet inneholder et tilfeldig tall mellom 0 og 1 eller float-type verdier som ble generert av $ RAND-operatøren for alle de 5 postene som også er vist i utgangen nedenfor:
Test> DB.Dummy.Aggregate ([$ Project: Random: $ rand: ]))Eksempel # 02: Bruke $ RAND -operatør med $ Multiply Operator
Det første eksemplet illustrerer bruken av "rand" -operatøren i MongoDB utelukkende på en samling. Nå vil vi bruke det i forbindelse med Multiply -operatøren. Vi har brukt spørringen nedenfor for dette formålet. Det starter med bruken av den samlede funksjonen med $ prosjektstadiet og tilfeldig operatør igjen. Denne gangen har Multiply -operatøren blitt brukt på en "$ rand" -operatør eller verdien vi har fra "RAND" -operatøren multipliseres med 10 for å generere et tilfeldig tall mellom 0 og 10 for hvert dokument. Utgangen nedenfor viser en rekke av alle dokumentene i samlingen “Dummy”, hver med sin unike identifikator og et nytt felt kalt Random som vil holde de genererte tilfeldige tallene mellom 0 og 10 I.e., flyte.
Test> DB.Dummy.Aggregate ([$ Project: Random: $ Multiply: [$ rand: , 10]]))Eksempel # 03: $ RAND -operatør med “$ Gulvoperatør
Den siste kommandoen illustrerer bruken av "RAND" -operatøren med "Multiply" -operatøren for å generere tilfeldige tall av float-type. Denne gangen vil vi utdype hvordan du genererer tall for heltallstype ved hjelp av "RAND" -operatøren i forbindelse med "gulvet" -operatøren av MongoDB. Derfor er instruksjonen nedenfor blitt utført i MongoDB -skallet for å produsere heltall tilfeldige verdier for hver post i samlingen “Dummy”. Denne gangen multipliseres den tilfeldige operatøren med 10 for å generere et tilfeldig tall mellom 0 og 10 for hvert dokument. Etter det blir gulvoperatøren brukt for å runde ned det tilfeldige tallet til nærmeste heltall.
Utgangen er en rekke av alle dokumentene i samlingen, hver med sin egen unike objektid, byegenskapen og en ny eiendom som heter Random som vil inneholde det genererte tilfeldige heltallet mellom 0 og 10 som demonstrert fra utdataene fra instruksjonen også.
Test> DB.Dummy.Aggregate ([$ Project: City: 1, Random: $ Floor: $ Multiply: [$ rand: , 10]])Eksempel # 04: $ rand operatør med $ gulvoperatør
I illustrasjonene ovenfor har vi multiplisert ut tilfeldig genererte verdier med 10 eller ingenting for å la dem i sin flyt-type form eller å konvertere dem til en heltallverdi. Men i dette eksemplet vil vi multiplisere våre tilfeldig genererte floatverdier med et lite større figur som er 5000. På samme måte er kommandoen som ble brukt i eksemplene ovenfor blitt brukt her med en liten endring. "Multiply" -operatøren multipliserer det tilfeldige tallet som genereres av $ RAND -operatøren med 5000 for å øke rekkevidden til det tilfeldige tallet. "Floor" -operatøren runder ned antallet som genereres av $ Multiply -operatøren til nærmeste heltall. Utgangen fra denne instruksjonen nedenfor viser 5 poster på MongoDB -skallskjermen med en ny egenskap som har et tilfeldig heltallsnummer mellom 0 og 5000 som følger:
Test> DB.Dummy.Aggregate ([$ Project: City: 1, Random: $ Floor: $ Multiply: [$ rand: , 5000]])Konklusjon
Vi har diskutert definisjonen av den "tilfeldige" operatøren i MongoDB. Vi har også diskutert bruken av bruken i MongoDB -kommandolinjen. Deretter prøvde vi 4 av de forskjellige eksemplene for å demonstrere bruken av den sammen med andre operatører. Kommandoene ovenfor viser hvordan du bruker MongoDB Aggregate -funksjonen og forskjellige operatører som $ Rand, $ Multiply og $ Floor for å manipulere data i en samling og generere nye egenskaper med tilfeldige tall.