Operador OR de MongoDB ($or)

MongoDB proporciona diferentes tipos de operadores lógicos de consulta y el operador $or es uno de ellos. Este operador se utiliza para realizar operaciones OR lógicas en la array de dos o más expresiones y seleccionar o recuperar solo aquellos documentos que coincidan con al menos una de las expresiones dadas en la array. 

  • Puede usar este operador en métodos como find(), update(), etc. según sus requisitos.
  • También puede usar este operador con consultas de texto, consultas geoespaciales y operaciones de clasificación.
  • Cuando MongoDB evalúa las cláusulas en la expresión $or, realiza un escaneo de colección. O si todas las cláusulas en $or expresión son compatibles con los índices, entonces MongoDB realiza exploraciones de índice.
  • También puede anidar $u operación.

Sintaxis:  

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

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 mediante el operador $or:

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

Python3

db.contributor.find({$or: [{branch: "ECE"},
                     {joiningYear: 2017}]}).pretty()

Coincidencia de valores en documentos anidados/incrustados mediante el operador $or:

En este ejemplo, estamos recuperando solo los documentos de los empleados cuya edad es 24 o cuyo estado es Delhi. 

Python3

db.contributor.find({$or: [{"personal.age": 24},
                     {"personal.state": "Delhi"}]}).pretty()

Coincidencia de valores en una array usando $or operador:

En este ejemplo, estamos recuperando solo los documentos de los empleados que al menos coincidan con uno de los valores en la array dada. 

Python3

db.contributor.find({$or: [{language: {$in: ["Java", "C"]}}]}).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 *