Operador AND de MongoDB ($and)

MongoDB proporciona diferentes tipos de operadores lógicos de consulta y el operador $and es uno de ellos. Este operador se utiliza para realizar operaciones AND lógicas en la array de una o más expresiones y seleccionar o recuperar solo aquellos documentos que coincidan con todas las expresiones dadas en la array. Puede usar este operador en métodos como find(), update(), etc. según sus requisitos.

  • Este operador realiza la evaluación de cortocircuito.
  • Si la primera expresión del operador $and se evalúa como falsa, entonces MongoDB no evaluará las expresiones restantes en la array.
  • También puede usar la operación AND implícitamente con la ayuda de comma(, ).
  • Puede usar la operación AND explícitamente (es decir, $and) cuando el mismo campo u operador se especifica en varias expresiones.

Sintaxis: 

{ $and: [ { Expression1 }, { Expression2 }, ..., { ExpressionN } ] }
or
{ { Expression1 }, { Expression2 }, ..., { ExpressionN }}

Ejemplos: En los siguientes ejemplos, estamos trabajando con:

Base de datos: GeeksforGeeks Colección: contribuyente Documento: tres documentos que contienen los detalles de los contribuyentes en forma de pares de valor de campo.

Coincidencia de valores usando el operador $and:

En este ejemplo, estamos recuperando solo los documentos de los empleados cuya sucursal es CSE y el año de incorporación es 2018. 

Python3

db.contributor.find({$and: [{branch: "CSE"},
                            {joiningYear: 2018}]}).pretty()

Usando el operador $and con múltiples expresiones que especifican el mismo campo:

En este ejemplo, estamos recuperando solo los documentos de los empleados cuya sucursal es CSE. 

Python3

db.contributor.find({$and: [{branch: {$eq: "CSE"}},
                            {branch: {$exists: true}}]}).pretty()

Python3

db.contributor.find({branch: {$eq: "CSE", $exists: true}}).pretty()

Usando el operador $and con múltiples expresiones que especifican el mismo operador:

En este ejemplo, estamos recuperando solo los documentos de los empleados que cumplen las condiciones dadas. 

Python3

db.contributor.find({$and: [{$or: [{branch: "ECE"}, {joiningYear: 2017}]},
                            {$or: [{"personal.state": "UP"},
                                   {"personal.age": 25}]}]}).pretty()

Publicación traducida automáticamente

Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *