MongoDB $ ABS -Operator

MongoDB $ ABS -Operator
MongoDB $ ABS -Operator ist einer der Arithmetik -Expression -Operatoren, die in der Aggregation Pipeline -Methode eingesetzt werden. Das Absolutwertergebnis einer bestimmten Zahl im Skript wird mit dem $ ABS -Operator zurückgegeben. Der absolute Wert impliziert, dass die Ganzzahl positiv oder negativ ist, er immer einen positiven Wert erzeugt. Der $ ABS -Operator gibt den Nullwert an, wenn der Ganzzahlwert null ist. Zusätzlich gibt der $ ABS -Operator den Nullwert zurück, wenn der Eingangswert einem leeren Feld entspricht.

Wie funktioniert der $ ABS -Operator in MongoDB?

Der $ ABS -Operator gibt eine Ausgabe des Absolutwerts in MongoDB an. Jetzt haben wir einige folgende Beispielfälle, um die Funktion des $ ABS -Operators in MongoDB zu demonstrieren. Wir arbeiten mit der Sammlung „StudentReport“ zusammen, in der die folgenden Dokumente eingefügt werden, was den Schüler mit dem Ergebnisbericht und den Details zu ihrer Gebührenstruktur zeigt. Die drei Dokumente in der Sammlung „StudentReport“ werden mit dem Befehl InsertMany () von MongoDB eingefügt.

db.Studentreport.InsertMany ([

"_id": 1,
"Student": "Emily",
"Zwischenmarke": 300,
"Final-Termmarks": 450,
"Gesamtzeichen": "1000",
"StudentFees": "Eintrittsfees": 50000,
"Semesterfees": 30000
,

"_id": 2,
"Student": "Jenny",
"Zwischenmarke": 400,
"Final-Termmarks": 490,
"Gesamtzeichen": "1000",
"StudentFees": "Eintrittsfees": 60000,
"Semesterfees": 35000
,

"_id": 3,
"Student": "Lara",
"Zwischenmarke": 399,
"Final-Termmarks": 500,
"Gesamtzeichen": "1000",
"StudentFees": "Eintrittsfees": 70000,
"Semesterfees": 50000

]))

Dort haben wir eine Ausgabe, nachdem wir die Dokumente in die Sammlung „StudentReport“ eingefügt haben. Jetzt kann der $ ABS -Operator auf die Felder der Dokumente angewendet werden, indem die Syntax dieses Bedieners folgt:

Anerkannt: TRUE, InisedIds: '0': 1, '1': 2, '2': 3

Beispiel 1: Verwenden des $ ABS -Operators

Wir verwenden den $ ABS -Operator von MongoDB hier, um einfach den absoluten Wert der bereitgestellten Felder zu erhalten. Die grundlegende Abfrage des $ ABS -Operators wird wie folgt angegeben:

db.Studentreport.Aggregat([
$ project:
"Mittelmarke": $ ABS: ["$ mittelfristigmarks"],
"Final-Termmarks": $ ABS: ["$ endgültige Marke"]
]))

Hier setzen wir zuerst die Aggregatmethode ein. Dann ist das $ project festgelegt. Danach setzen wir die Felder „Mittelmarke“ und „Endzeitmarks“ innerhalb des $ -Projektbetreibers. Jedes Feld wird mit dem Ausdruck zugeordnet, in dem der $ ABS -Operator verwendet wird. Die „Zwischenmarks“ hält den Ausdruck „$ ABS: [$ Mid-Termmarks“] “. Ebenso wenden wir den $ ABS-Betreiber auf das zweite Feld an, das „endgültige Marke“ ist. Beide Felder werden mit dem separaten „$ ABS“ -Operator für die einzelnen absoluten Werte festgelegt, die erhalten werden.

Die absoluten mittelfristigen Noten und die endgültigen Noten werden vom MongoDB $ ABS-Betreiber zurückgegeben. Beachten Sie, dass der Absolutwert des $ ABS -Operators das negative Vorzeichen entfernt, wenn ein Feld das negative Zeichen im Dokument enthält.

[
_id: 1, 'Mittelmarks': 300, 'endgültige Marke': 450,
_id: 2, 'Mittelmarks': 400, 'Final-Termmarks': 490,
_id: 3, 'Mittelmarks': 399, 'endgültige Marks': 500
]

Beispiel 2: Verwenden des $ ABS -Operators mit dem $ add -Operator

Der $ ABS -Operator kann auch mit einem anderen Operator in MongoDB verwendet werden. Wir verwenden den $ add -Operator innerhalb des $ ABS -Operators, um die Werte zusammen hinzuzufügen. Wir können den arithmetischen Operator im $ ABS -Operator anwenden, da er nur den numerischen Wert akzeptiert. Der Befehl des $ ABS -Operators zusammen mit dem $ add -Operator für zusätzliche Zwecke wird wie folgt angezeigt:

db.Studentreport.Aggregate ([$ Match: Student: "Emily",
$ project:
Markierungen: $ ABS:
$ add: ["$ mittelfristigmark", "$ endgültigmarks"]])

Hier rufen wir zuerst den $ projektbetreiber, der mit dem Feld „Marks“ angegeben ist. Das Feld „Markierungen“ wird mit den Gesamtmarken zugeordnet, die vom $ ABS -Operator zurückgegeben werden. Anschließend bieten wir den Ausdruck des $ ABS -Operators - $ ABS: $ add: [$ mittelfristigmarks “,„ $ Final -Termmarks “ - wie wir den„ $ add “-Operator einfügen, der weiter mit dem„ $ Mid “angegeben ist -Termarks und "$ Final-Termmarks" -Felder. Der $ add -Operator fügt zuerst die Werte dieser festgelegten Felder hinzu. Dann werden die zusätzlichen Ergebnisse dem $ ABS -Operator zugeordnet. Der $ ABS -Operator generiert den absoluten Wert in der Ausgabe.

Das Ergebnis des $ ABS -Operators durch den $ add -Betrieb wird hier abgerufen:

[_id: 1, Marks: 750]

Beispiel 3: Verwenden des $ ABS -Operator

Wir können den $ add -Operator im $ ABS -Operator für den Additionsbetrieb verwenden. Wir können auch den $ Subtraherbetreiber verwenden, um die Größenunterschiede zwischen den angegebenen Feldern aus den Dokumenten zu bewerten. Anstelle des $ add -Operators wenden wir den $ subtract -Operator an, der im Folgenden zu sehen ist:

db.Studentreport.Aggregat([
$ Match: _id: 1,
$ project:
"Zwischenmarke": 1,
"Final-Termmarks": 1,
Ergebnis:
$ abs: $ subtract: ["$ mittelfristigmarks", "$ Final-Termmarks"]



]
)

Hier stimmen wir mit dem $ Match -Operator zuerst mit dem Dokument überein. Der $ Match -Operator durchsucht das Dokument, dessen Feld "_id" "1" ist. Anschließend setzen wir den $ Project-Betreiber, bei dem die Felder „Zwischenzeiten“ und „Endzeitmarks“ mit einer Nummer „1“ zugeordnet sind, die angibt, dass diese Felder in die Ausgabe einbezogen werden müssen. Danach haben wir ein Feld "Ergebnis", das den Rückgabewert des $ ABS -Operators zuweist. Der $ ABS-Betreiber wird angewendet, wenn der $ subtrahierende Betreiber die Differenz zu den Markierungen, die den „mittelfristigen Zeichen“ und den „Endzeitmarks“ zur Verfügung gestellt werden, eingesetzt werden soll, und die Markierungen, die zur Verfügung stehen, und die „Endzeitmarks“ zur Verfügung gestellt werden.

Der vorherige Befehl $ ABS -Operator des Dokuments „_id: 1“ enthält die folgende Ausgabe:

[
_id: 1, 'Mittelmarke': 300, 'Final-Termmarks': 450, Ergebnis: 150
]

Beispiel 4: Verwenden des $ ABS -Operators innerhalb des eingebetteten Dokuments

Als nächstes setzen wir den $ ABS -Operator für das eingebettete Dokument, das genauso wie das vorherige Beispiel funktioniert. Betrachten wir eine weitere Anfrage des $ ABS -Operators in der folgenden Demonstration:

db.Studentreport.Aggregat([
$ Match: Student: "Lara",

$ project:

Student: 1,
StudentFees: $ abs: $ add: [
"$ StudentFees.Eintrittsfees "," $ StudentFees.Semesteres "]
]))

Hier entsprechen wir dem Dokument, in dem das Feld "Studenten" den "Lara" -Wert hat. Dann geben wir das Feld „Student“ in die Ausgabe ein, indem wir ihn mit einem Wert von „1“ im $ project zuweisen. Das $ Project wird mit dem $ ABS -Operator auf dem eingebetteten Feld „StudentFees“ festgelegt. Der $ ABS -Betreiber gibt den Betrag der Gesamtgebühren an, indem die Werte der eingebetteten Felder hinzugefügt werden - "Eintrittsfeiern" und "Semesterfeiern".

Im Folgenden finden Sie die Gesamtgebühren, die wir vom $ ABS -Operator erhalten:

[_id: 3, Student: 'Lara', StudentFees: 120000]

Beispiel 5: Verwenden des $ ABS -Operators für NAN -Werte

Wenn der Wert, der dem $ Operator zur Verfügung gestellt wird. Wir haben eine bestimmte Beispielabfrage, bei der der $ ABS -Operator den resultierenden Wert als „Nan“ generiert:

db.Studentreport.Aggregat([
$ Match: _id: 3,
$ project:
"_id": 1,
"Mittelmarke": $ ABS: ["$ mittelfristigmarks"],
"Final-Termmarks": $ ABS: [1 * "S"]


]))

Hier suchen wir nach dem Dokument, das den "ID" -Wert "3" enthält. Nach der Suche setzen wir den $ projektbetreiber ein, bei dem die „Mittelmarke“ mit dem $ ABS-Betreiber bereitgestellt werden, um den absoluten Wert zu geben. Anschließend setzen wir den $ ABS-Betreiber in den „Endzeitmarks“, in der der $ ABS-Betreiber am numerischen Wert von „1“ arbeitet, der mit dem Stringwert von „S“ multipliziert wird, multipliziert.

Das Ergebnis zeigt den Absolutwert für das Feld „Mittelmarke“ und den NAN-Wert für die „Endzeitmarks“.

[_id: 3, 'Mittelmarks': 399, 'endgültige Marke': nan]

Abschluss

Der Artikel handelt von der Arbeit des $ ABS -Operators in MongoDB. Wir können den absoluten Wert durch die Verwendung des $ ABS -Operators bestimmen. Der $ ABS -Operator zusammen mit seiner unterschiedlichen Beispielimplementierung wird in diesem Artikel demonstriert. Wir haben den $ ABS -Operator mit den eingebetteten Feldern des Dokuments verwendet. Dann haben wir die verschiedenen arithmetischen Operatoren innerhalb des $ ABS -Operators kombiniert. Darüber hinaus übernimmt der $ ABS -Operator die NAN -Argument -Werte, die das NAN -Ergebnis in die Ausgabe zurückgegeben haben.