MongoDB $cmp 运算符
MongoDB中提供不同类型的在聚合流水线级$ CMP运算符是它们中的一个用c omparison表达式运算符的。该运算符用于执行两个值之间的比较,并根据条件返回以下结果:
- 如果第一个值大于第二个值,则此运算符将返回1 。
- 如果第一个值小于第二个值,则此运算符将返回-1 。
- 如果两个值相等,则此运算符将返回0 。
句法:
{ $cmp: [ , ] }
例子:
在以下示例中,我们正在使用:
Database: GeeksforGeeks
Collection: example
Document: two documents that contain the details of the shapes in the form of field-value pairs.
使用 $cmp 运算符:
在此示例中,我们将侧字段的值与 4 和 $cmp运算符返回 0 进行比较,这意味着两个值相等。
db.example.aggregate([{$match: {name: "Square"}},
... {$project: {result: {$cmp:["$side", 4]}}}])
在嵌入式文档中使用 $cmp 运算符:
在此示例中,我们将measurement.height 字段的值与measurement.width 字段的值进行比较,$cmp运算符返回-1,这意味着measurement.height 字段的两个值都小于measurement.width 的值场地。
db.example.aggregate([{$match: {name: "Rectangle"}},
... {$project: {result:
... {$cmp:["$measurement.height", "$measurement.width"]}}}])