2016-01-24 42 views
0

我有一个字段items这是一个包含0个或更多项目的数组。我想查找具有特定项目集的所有文档。他们应该只有这些项目,并没有额外的项目。这些项目的顺序是未定义的。如何比较数组是否在MongoDB中保存相同的项目?

{ 
    "_id": 1, 
    "items": ["foo", "bar", "qux"] 
} 
{ 
    "_id": 2, 
    "items": ["bar", "qux"] 
} 
{ 
    "_id": 3, 
    "items": ["foo", "bar", "qux", "biz"] 
} 
{ 
    "_id": 4, 
    "items": ["foo", "qux", "bar"] 
} 

是否有可以在items被用来获取所有文档的查询操作有(只)“富”,“酒吧”和“qux”?所以在这个例子中的文档1和4。

回答

3

$all$size

db.collection.find({items: {$all: ["foo", "qux", "bar"], $size: 3}}); 
试试吧
相关问题