MongoDB $ CEIL e $ OPERATORI

MongoDB $ CEIL e $ OPERATORI

Il Ceil $ e il $ Floor sono operatori di espressione aritmetica che sono disponibili in MongoDB per l'uso nelle diverse fasi della pipeline aggregata. L'operatore $ CEIL viene utilizzato per recuperare il valore intero più basso che è maggiore o uguale al valore intero dato. Mentre l'operatore $ pavimenti del mongodb funziona per ottenere il numero intero più alto che è inferiore o uguale al valore dato. Il MongoDB $ CEIL e gli operatori $ Floor accettano l'espressione valida che valuta un valore numerico.

Come utilizzare gli operatori MongoDB $ CEIL e $ Floor

Gli operatori $ CEIL e $ Floor sono applicati ai campi dei documenti che contengono valori numerici. Quindi, inseriamo i documenti insieme ai diversi campi nella raccolta di MongoDB "ExamsReport". Qui, utilizziamo il comando insertmany per aggiungere il documento contemporaneamente. La rappresentazione dell'inserimento del documento nella collezione "ExamsReport" è la seguente:

db.ExamSreport.InsertMany ([

"_id": 1,
"Studente": "Tan" ,
"Dipartimento": "It",
"Percentuale": 98.99,
"CGPA": 3.9,
"Marks": "Internalmarks": 10.5,
"Marchi esterni": 11.75
,

"_id": 2,
"Studente": "Kim" ,
"Dipartimento": "CS",
"percentuale": 88.45,
"CGPA": 3.68,
"Marks": "Internalmarks": 9.5,
"Marchi esterni": 7.25
,

"_id": 3,
"Studente": "Jenny" ,
"Dipartimento": "CS",
"Percentuale": 95.72,
"CGPA": 3.84,
"Marks": "Internalmarks": 8.5,
"Marchi esterni": 9.75
,

"_id": 4,
"Studente": "Harry" ,
"Dipartimento": "SE",
"Percentuale": 84.23,
"CGPA": 3.50,
"Marks": "Internalmarks": 5.65,
"Marchi esterni": 7.28
,

"_id": 5,
"Studente": "Charlie" ,
"Dipartimento": "It",
"percentuale": 81.3,
"CGPA": NULL,
"Marks": "Internalmarks": 4.5,
"Marchi esterni": 6.9

])

Quando i documenti vengono inseriti senza alcuna risoluzione dei problemi, l'output generato dalla shell Mongodb sembra questo:


riconosciuto: vero,
inseritedids: '0': 1, '1': 2, '2': 3, '3': 4, '4': 5

Esempio 1: utilizzando l'operatore $ CEIL in MongoDB

L'operatore $ CEIL viene utilizzato qui per ottenere il soffitto del campo fornito dal documento della collezione "ExamsReport". Utilizziamo la funzione aggregata () in cui impieghiamo l'operatore $ progetti. Specifichiamo il campo "studente" con il valore di "1" che deve essere incluso insieme ai valori del soffitto. L'operatore $ Project viene quindi definito con l'attributo "Profless%". L'attributo "Centro%" è impostato con la condizione "$ ceil:" $ percentuale ". L'operatore "$ ceil" viene utilizzato qui che assume il campo "$ percentuale" per generare il valore del soffitto.

db.ExamSreport.aggregato(
[

$ Progetto:

"Studente": 1,
"Centro%": $ ceil: "$ percentuale"


"
)

Vengono visualizzati l'output con il nuovo campo "%soffitto" in cui vengono visualizzati i valori del soffitto della percentuale di campo dall'operatore $ CEIL. Tutti i valori del soffitto sono i numeri più piccoli che sono maggiori o uguali alle percentuali.

[
_id: 1, studente: 'tan', 'soffitto%': 99,
_id: 2, studente: 'kim', 'soffitto%': 89,
_id: 3, Student: 'Jenny', 'Centro%': 96,
_id: 4, studente: 'Harry', 'soffitto%': 85,
_id: 5, Studente: "Charlie", "Centro%": 82
"

Esempio 2: utilizzando l'operatore $ CEIL per il documento incorporato in MongoDB

Ora, distribuiamo l'operatore di $ CEIL per trovare il più piccolo valore del soffitto numerico che è maggiore o uguale al valore del campo nidificato dei "marchi interni" del campo "marchi". Innanzitutto, specifichiamo l'operatore del progetto $ all'interno del comando aggregato. Quindi, abbiamo impostato il valore di "1" per i "segni incorporati.Campi interni ”da visualizzare con i risultati. Successivamente, abbiamo un attributo di "basi del soffitto" che viene inserito con l'operatore $ CEIL come "$ ceil:" $ marks.marchi interni ”". Si noti che l'operatore $ CEIL è assegnato con i segni incorporati ".Campi interni ”per recuperare il valore del soffitto di questo campo.

db.ExamSreport.aggregato([
$ Progetto:
"Segni.Marchi interni ": 1,
BECIINGMARKS: $ CEIL: "$ marks.marchi interni "])

I risultati mostrano dove abbiamo i valori di campo "marchi interni" incorporati e si ottengono i valori del soffitto. I valori del soffitto ottenuti sono tutti arrotondati dai valori effettivi del campo specificato.

[
_id: 1, marks: interni marchi: 10.5, MARCHIGGIO DEL CONFERIORE: 11,
_id: 2, marks: interni dei marchi: 9.5, MARCHIGGIO DEL CONFERIORE: 10,
_id: 3, marks: interni marchi: 8.5, MARCHIGGIO DEL CONFERIORE: 9,
_id: 4, marks: interni marchi: 5.65, Marks. 6,
_id: 5, marchi: interni dei marchi: 4.5, Marks
"

Esempio 3: utilizzando l'operatore $ CEIL per il campo Documento mancante in MongoDB

Quando l'operatore $ CEIL di MongoDB incontra il campo del documento di non esistenza, fornisce il valore nullo. Considera la query in cui utilizziamo l'operatore $ CEIL per ottenere il valore intero più piccolo che è maggiore o uguale al campo che non esiste nel documento. Per questo, usiamo l'operatore $ Match in cui viene data l'espressione "" dipartimento ":" It "" per abbinare quel particolare documento. Quindi, chiamiamo l'operatore del progetto $ che è inserito con il campo "studente" con l'intero "1" che indica che solo il campo "studente" appare nell'output. Successivamente, creiamo l'attributo "CeilingMobile" per l'operatore $ CEIL da impiegare. Forniamo il campo "$ mobile_number" all'operatore $ ceil che è il campo mancante dei documenti di raccolta "ExamSreport".

db.ExamSreport.aggregato(
[
$ match: "dipartimento": "it",

$ Progetto:

"Studente": 1,
CeilingMobile: $ ceil: "$ mobile_number"


"
)

Lì, possiamo vedere che il valore nullo è ottenuto contro l'attributo "CEPIINGMOBILE" poiché il campo di non esistenza è impostato sull'operatore $ CEIL.

[
_id: 1, studente: 'tan', texilmobile: null,
_id: 5, Studente: 'Charlie', CeilingMobile: Null
"

Esempio 4: Utilizzo dell'operatore $ Floor in MongoDB

Qui, iniziamo con un altro operatore da $ pavimenti di MongoDB. Otteniamo il numero maggiore dall'operatore $ pavimenti che è inferiore o uguale al numero intero dato. Quindi, abbiniamo il documento "Dipartimento" il cui valore è "CS" che è impostato come condizione per $ Match Operator. Successivamente, proiettiamo il campo "CGPA" e l'attributo "FloorCGPA" all'interno dell'operatore del progetto $. La "FloorCGPA" ha la dichiarazione "$ ploor:" $ cgpa "" in cui viene utilizzato l'operatore $ pavimenti per ottenere il valore maggiore che è inferiore o uguale ai valori del campo "$ cgpa".

db.ExamSreport.aggregato([
$ match: dipartimento: "cs",
$ Progetto:
CGPA: 1,
ploorcgpa: $ ploor: "$ cgpa"])

L'operatore $ pavimenti restituisce i seguenti valori dal campo "CGPA". I "CGPA" sono i valori effettivi e il "FloorCgPA" sono i valori del pavimento.

[
_id: 2, cgpa: 3.68, floorcgpa: 3,
_id: 3, cgpa: 3.84, floorcgpa: 3
"

Esempio 5: utilizzando l'operatore $ pavimenti per il valore null in mongodb

Gli operatori $ floor e $ ceil restituiscono entrambi null quando il campo contiene il valore nullo per ottenere i valori del CEIL e del pavimento. Qui, prendiamo un esempio con l'operatore $ Floor. Specifichiamo il documento "_id": 5 "all'operatore $ Match il cui campo" CGPA "ha il valore null. Quindi, passiamo quel campo "CGPA" all'operatore $ Floor che è impostato all'interno dell'attributo "FloorValue" dell'operatore $ Project. Qui, l'operatore $ pavimenti restituisce semplicemente l'output nullo perché il valore "CGPA" è "null".

db.ExamSreport.aggregato(
[
$ match: "_id": 5,

$ Progetto:

"Studente": 1,
"CGPA": 1,
FloorValue: $ Floor: "$ cgpa"


"
)

Vengono generati i seguenti risultati in cui il campo "CGPA" ha un valore nullo ed è per questo che il valore del pavimento è nullo contro il campo "pavimenti".

[_id: 5, cgpa: null, floorvalue: null]

Esempio 6: Utilizzo dell'operatore $ Floor per l'operazione NAN in MongoDB

L'operatore $ floor e l'operatore $ CEIL emette NAN se il valore dell'argomento è NAN. Qui, abbiamo un'implementazione di questa affermazione. Troviamo il documento che memorizza il valore del campo "studente" come "Harry". Quindi, invochiamo l'operatore $ pavimenti all'interno dell'attributo $ Project Operator e "Floor" che è specificato con l'espressione indefinita "$ floor:" $ cgpa " * 1".

db.ExamSreport.aggregato(
[
$ match: "studente": "Harry",
$ Progetto:
Floor: $ Floor: "$ cgpa" * 1


"
)

L'attributo "Floor" ha il valore "NAN" restituito dall'operatore $ Floor.

[_id: 4, pavimento: nan]

Conclusione

Questo articolo riguarda la funzionalità degli operatori MongoDB $ CEIL e $ Floor. Abbiamo discusso per la prima volta l'esempio di base sia degli operatori $ CEIL che di $ Floor. Dopodiché, abbiamo preso i diversi scenari sia per gli operatori $ CEIL che per $ Floor. Innanzitutto, abbiamo utilizzato l'operatore $ CEIL sul documento incorporato e quindi applicato l'operatore $ CEIL sul campo che non fa parte di nessun documento. Successivamente, abbiamo i casi di operatore $ pavimenti da cui abbiamo recuperato i valori null e nan a causa delle espressioni specificate.