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 campo
pricecuyo valor no es igual a1.99pero no contienen el camposaleoNo contienen el campo
pricepero contienen el camposalecuyo 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
incluyendo aquellos documentos que no contienen este(s) campo(s).
La excepción en el regreso de documentos que no contienen el campo en la $nor expresión es cuando el operador $nor se utiliza con el $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:
contenga el campo
pricecuyo valor no sea igual a1.99y contenga el camposalecuyo valor no sea igual atrue