查找包含一个字段但不包含另一个字段

时间:2017-02-10 18:03:39

标签: mongodb

我有一个集合,其中每个文档都包含一个嵌入式集合;例如:

{
 cells: [
  {
   x: 1,
   y: 2
  },
  {
   x: 3
  }
 ]
 /* more fields not shown */
}

有没有办法在没有 y -value的情况下找到那些在单元格集合中至少有一个文档的文档(如此处显示的记录)?

1 个答案:

答案 0 :(得分:3)

您可以使用$elementMatch来实现它:

db.col.find({
  cells: {
    $elemMatch: {
      y: {
        $exists: false
      }
    }
  }
});