Mongodb Mongo项目测试值是否在数组中

Mongodb Mongo项目测试值是否在数组中,mongodb,aggregation-framework,contains,projection,Mongodb,Aggregation Framework,Contains,Projection,在mongo聚合的项目步骤中,我想创建一个布尔字段,如: { $project: { isInArray: { $cond: [ { $in: ['$_id', ids] }, { $const: true }, { $const: false }, ] }, }, }, 但这是失败的 invalid operator $in 我找不到有关正确语法的文档您可以使用运算符 您知道是否存在性能下降的问题,例如,\u id中是否有一个索

在mongo聚合的项目步骤中,我想创建一个布尔字段,如:

{
  $project: {
    isInArray: { $cond: [
      { $in: ['$_id', ids] },
      { $const: true },
      { $const: false },
    ] },
  },
},
但这是失败的

 invalid operator $in
我找不到有关正确语法的文档

您可以使用运算符


您知道是否存在性能下降的问题,例如,
\u id
中是否有一个索引可能不会被使用?@Guig afaik aggregation只能在$match操作中使用索引(如果先使用)
db.people.aggregate([
 { $project: {
    isInArray: { $cond: [ {$setIsSubset: [['$_id'], ids]}, true, false ] }
 }}
])