Database Manual / Reference / Query Language / Expressions

$ne (aggregation)(聚合)

Definition定义

$ne

Compares two values and returns:比较两个值并返回:

  • true when the values are not equivalent.当值不相等时为true
  • false when the values are equivalent.当值相等时为false

The $ne compares both value and type, using the specified BSON comparison order for values of different types.$ne使用指定的BSON比较顺序对不同类型的值进行值和类型比较。

$ne has the following syntax:具有以下语法:

{ $ne: [ <expression1>, <expression2> ] }

For more information on expressions, see Expressions.有关表达式的详细信息,请参阅表达式

Example示例

Consider an inventory collection with the following documents:考虑使用以下文件进行inventory集合:

db.inventory.insertMany( [
{ _id: 1, item: "abc1", description: "product 1", qty: 300 }
{ _id: 2, item: "abc2", description: "product 2", qty: 200 }
{ _id: 3, item: "xyz1", description: "product 3", qty: 250 }
{ _id: 4, item: "VWZ1", description: "product 4", qty: 300 }
{ _id: 5, item: "VWZ2", description: "product 5", qty: 180 }
] )

The following operation uses the $ne operator to determine if qty does not equal 250:以下操作使用$ne运算符来确定qty是否不等于250

db.inventory.aggregate(
[
{
$project:
{
item: 1,
qty: 1,
qtyNe250: { $ne: [ "$qty", 250 ] },
_id: 0
}
}
]
)

The operation returns the following results:该操作返回以下结果:

{ item: "abc1", qty: 300, qtyNe250: true }
{ item: "abc2", qty: 200, qtyNe250: true }
{ item: "xyz1", qty: 250, qtyNe250: false }
{ item: "VWZ1", qty: 300, qtyNe250: true }
{ item: "VWZ2", qty: 180, qtyNe250: true }