MongoDB $ Operator ABS

MongoDB $ Operator ABS
MongoDB $ ABS Operator es uno de los operadores de expresión aritmética que se implementa en el método de tuberías de agregación. El resultado del valor absoluto de un número dado en el script se devuelve utilizando el operador $ ABS. El valor absoluto implica que si el entero es positivo o negativo, siempre genera un valor positivo. El operador $ ABS da el valor nulo cuando el valor entero es nulo. Además, el operador $ ABS también devuelve el valor nulo si el valor de entrada corresponde a un campo vacío.

¿Cómo funciona el operador de $ ABS en MongoDB?

El operador $ ABS proporciona una salida del valor absoluto en MongoDB. Ahora, tenemos algunos siguientes casos de ejemplo para demostrar la función del operador $ ABS en MongoDB. Estamos trabajando con la colección "StudentReport" donde se insertan los siguientes documentos que muestran al estudiante con el informe de resultados y los detalles sobre su estructura de tarifas. Los tres documentos en la colección "StudentReport" se insertan utilizando el comando InsertMany () de MongoDB.

db.Receptor estudiantil.insertmany ([

"_id": 1,
"Estudiante": "Emily",
"Marcos a mitad de período": 300,
"Marcos finales": 450,
"TotalMarks": "1000",
"StudentFees": "Admissionfees": 50000,
"Semesterfees": 30000
,

"_id": 2,
"Estudiante": "Jenny",
"Marcos intermedios": 400,
"Marcos finales": 490,
"TotalMarks": "1000",
"StudentFees": "AdmissionFees": 60000,
"Semesterfees": 35000
,

"_id": 3,
"Estudiante": "Lara",
"Marcos a mitad de período": 399,
"Marcos finales": 500,
"TotalMarks": "1000",
"StudentFees": "Admissionfees": 70000,
"Semesterfees": 50000

])

Allí, tenemos una salida después de insertar los documentos en la colección "StudentReport". Ahora, el operador $ ABS se puede aplicar a los campos de los documentos siguiendo la sintaxis de este operador:

Reconocido: True, InsertedIDS: '0': 1, '1': 2, '2': 3

Ejemplo 1: Uso del operador $ ABS

Utilizamos el operador $ ABS de MongoDB aquí para simplemente obtener el valor absoluto de los campos proporcionados. La consulta básica del operador $ ABS se da de la siguiente manera:

db.Receptor estudiantil.agregar([
$ Project:
"Mid-Termmarks": $ ABS: ["$ Mid-Termmarks"],
"Final-Termmarks": $ ABS: ["$ final-término"]
])

Aquí, primero implementamos el método agregado. Entonces, el proyecto $ está establecido. Después de eso, establecemos los campos de "Marcos medios" y "Marcos finales" dentro del operador de Proyecto $. Cada campo se asigna con la expresión donde se emplea el operador $ ABS. La "Marcas a mitad de período" posee la expresión "$ ABS: [" $ Mid-Termmars "]" que obtiene el valor absoluto de las marcas de mediana plazo del estudiante del operador $ ABS. Del mismo modo, aplicamos el operador $ ABS al segundo campo que es "marcos finales". Ambos campos se establecen con el operador separado "$ ABS" a los valores absolutos individuales que se obtienen.

El operador MongoDB $ ABS devuelve las marcas a mitad de período absolutas y las marcas finales son devueltas por el operador MongoDB $ ABS. Tenga en cuenta que el valor absoluto del operador $ ABS elimina el signo negativo si algún campo contiene el signo negativo en el documento.

[
_id: 1, 'Mid-Termmars': 300, 'Final-Termmarks': 450,
_id: 2, 'Mid-Termmarks': 400, 'Final-Termmarks': 490,
_id: 3, 'Mid-Termmarks': 399, 'Final-Termmarks': 500
]

Ejemplo 2: Uso del operador $ ABS con el operador $ add

El operador $ ABS también se puede usar con otro operador en MongoDB. Usamos el operador $ add dentro del operador $ ABS para agregar los valores juntos. Podemos aplicar el operador aritmético dentro del operador $ ABS, ya que solo acepta el valor numérico. El comando del operador $ ABS junto con el operador $ add para fines adicionales se muestra de la siguiente manera:

db.Receptor estudiantil.agregado ([$ Match: Student: "Emily",
$ Project:
Marcas: $ ABS:
$ ADD: ["$ Mid-Termarks", "$ final-término"]]]))

Aquí, primero llamamos al operador del proyecto $ que se especifica con el campo "Marcas". El campo "Marcas" se asigna con las marcas totales que devuelven el operador de $ ABS. Luego, proporcionamos la expresión del operador de $ ABS - $ ABS: $ add: ["$ Mid -Termmarks", "$ final de término final" - mientras insertamos el operador "$ add" que se especifica más con el "$ Mid Mid -Campos de marcos terminales "y" $ final-término ". El operador $ add primero agrega los valores de estos campos establecidos. Luego, los resultados adicionales se asignan al operador $ ABS. El operador $ ABS genera el valor absoluto en la salida.

El resultado del operador $ ABS por la operación $ add se obtiene aquí:

[_id: 1, marca: 750]

Ejemplo 3: Uso del operador $ ABS con el operador $ RESTA

Podemos usar el operador $ add en el operador $ ABS para la operación de adición. También podemos usar el operador $ RESTA para evaluar la diferencia de magnitud entre los campos especificados de los documentos. En lugar del operador $ add, aplicamos el operador $ rectificador que se puede ver en lo siguiente:

db.Receptor estudiantil.agregar([
$ Match: _id: 1,
$ Project:
"Marcos intermedios": 1,
"Marcos finales": 1,
resultado:
$ ABS: $ RESTRO: ["$ Mid-Termarks", "$ final-término"]



]
)

Aquí, combinamos el documento primero usando el operador $ Match. El operador $ Match busca el documento cuyo campo "_id" es "1". Luego, establecemos el operador de proyecto $ donde los campos "Mid-TermRaks" y "Final-TermetM" se asignan con un número "1" que indica que estos campos deben incluirse en la salida. Después de esto, tenemos un campo de "resultado" que asigna el valor de devolución del operador de $ ABS. El operador $ ABS se aplica donde el operador $ RESTRO está configurado para obtener la diferencia de las marcas que se proporcionan a los "marcos intermedios" y los "marcos finales".

El comando anterior del operador $ ABS del documento "_id: 1" tiene la siguiente salida:

[
_id: 1, 'Mid-Termmarks': 300, 'Final-Termmarks': 450, Result: 150
]

Ejemplo 4: Uso del operador $ ABS dentro del documento integrado

A continuación, establecemos el operador $ ABS para el documento integrado que funciona igual que el ejemplo anterior. Consideremos otra consulta del operador $ ABS en la siguiente manifestación:

db.Receptor estudiantil.agregar([
$ Match: Student: "Lara",

$ Proyecto:

Estudiante: 1,
StudentFees: $ ABS: $ add: [
"$ Studentfees.Admissionfees "," $ estudiante.SemesterFees "]
])

Aquí, coincidimos con el documento donde el campo "Estudiante" tiene el valor "Lara". Luego, incluimos el campo "Estudiante" en la salida asignándolo con un valor de "1" en el proyecto $. El proyecto $ se establece con el operador $ ABS en el campo "estudiante de estudiantes" integrado. El operador de $ ABS ofrece la cantidad de tarifas totales al agregar los valores de los campos integrados: "admissionfees" y "semestrales".

Las siguientes son las tarifas totales que obtenemos del operador $ ABS:

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

Ejemplo 5: Uso del operador $ ABS para valores NAN

Cuando el valor que se proporciona al operador $ no es un tipo de datos numérico o un valor indefinido, se eleva el valor "nan". Tenemos una consulta de ejemplo dada donde el operador $ ABS genera el valor resultante como "nan":

db.Receptor estudiantil.agregar([
$ Match: _id: 3,
$ Project:
"_id": 1,
"Mid-Termmarks": $ ABS: ["$ Mid-Termmarks"],
"Final-Termmarks": $ ABS: [1 * "S"]


])

Aquí, buscamos el documento que contiene el valor de "id" "3". Después de buscar, implementamos el operador de proyecto $ donde el "marcos a mitad de período" se proporciona con el operador $ ABS para dar el valor absoluto. Luego, establecemos el operador $ ABS en los "marcos de término final" donde el operador $ ABS funciona en el valor numérico de "1" que se multiplica por el valor de cadena de "S".

El resultado muestra el valor absoluto para el campo "Marcos a mitad de período" y el valor NAN para los "marcos finales".

[_id: 3, 'Mid-Termmarks': 399, 'Final-Termmarks': Nan]

Conclusión

El artículo trata sobre el funcionamiento del operador $ ABS en MongoDB. Podemos determinar el valor absoluto mediante el uso del operador $ ABS. El operador $ ABS junto con su implementación de ejemplo diferente se demuestra en este artículo. Usamos el operador $ ABS con los campos integrados del documento. Luego, combinamos los diferentes operadores aritméticos dentro del operador de $ ABS. Además, el operador $ ABS toma los valores de argumento NAN que devolvieron el resultado NAN en la salida.