On this page
$ne
$ne
- 语法:
{field: {$ne: value} }
- 语法:
$ne选择field
的值不等于指定的value
的文档。这包括不包含field
的文档。
有关不同 BSON 类型值的比较,请参见指定的 BSON 比较 Sequences。
考虑以下示例:
db.inventory.find( { qty: { $ne: 20 } } )
此查询将选择inventory
集合中qty
字段值不等于20
的所有文档,包括那些不包含qty
字段的文档。
考虑以下示例,该示例将$ne运算符与嵌入式文档中的字段一起使用:
db.inventory.update( { "carrier.state": { $ne: "NY" } }, { $set: { qty: 20 } } )
此update()操作将在包含嵌入式文档carrier
的文档中设置qty
字段值,该文档的state
字段值不等于“ NY”,或者state
字段或carrier
嵌入式文档不存在。
不等式运算符$ne 并非具有很高的选择性,因为它通常与索引的很大一部分匹配。结果,在许多情况下,带有索引的$ne查询的性能可能不比必须扫描集合中所有文档的$ne查询更好。另请参见Query Selectivity。