Definición
Ejemplos
$nor Query con dos expresiones
Considera la siguiente query que utiliza únicamente el operador $nor:
db.inventory.find( { $nor: [ { price: 1.99 }, { sale: true } ] } )
Esta query devolverá todos los documentos que:
contener el campo
pricecuyo valor no es igual a1.99y contener el camposalecuyo valor no es igual atrueocontienen el
pricecampo cuyo valor no es igual a1.99pero no contienen elsalecampo ono contienen el
pricecampo pero contienen elsalecampo cuyo valor no es igual atrueono contienen el campo
pricey no contienen el camposale
$nor y comparaciones adicionales
Considera el siguiente query:
db.inventory.find( { $nor: [ { price: 1.99 }, { qty: { $lt: 20 } }, { sale: true } ] } )
Este query seleccionará todos los documentos de la colección inventory donde:
el valor del campo
priceno es igual a1.99yel valor del campo
qtyno es menor que20yel valor del campo
saleno es igual atrue
incluidos aquellos documentos que no contienen estos campos.
La excepción al devolver documentos que no contienen el campo en la expresión $nor $nor es cuando se usa el operador con la $exists operador.
$nor y $exists
Compárelo con la siguiente query que utiliza el operador $nor con el operador $exists:
db.inventory.find( { $nor: [ { price: 1.99 }, { price: { $exists: false } }, { sale: true }, { sale: { $exists: false } } ] } )
Esta query devolverá todos los documentos que:
contener el
pricecampo cuyo valor no es igual a1.99y contener elsalecampo cuyo valor no es igual atrue