如何在Mongo聚合管道中排除结果?

时间:2017-05-29 11:07:04

标签: mongodb mongodb-query aggregation-framework

我是Mongo聚合管道的新手,我尝试做的是找到一种从查询中排除文档的简单方法。此集合中的每个文档都可以有多个usernames。我在我的聚合中尝试排除的是任何用户名不是userAuserB的文档。我想做的是:

...
{$dontmatch: {usernames: {$nin: ['userA', 'userB']}}}

我当前的查询:

...
{$match:{
    $or: [
        {$and: [{usernames: {$size: 1}}, {usernames: {$in: ["userA", "userB"]}}]},
        {$and: [{usernames: {$size: 2}}, {usernames: {$all: ["userA", "userB"]}}]}
    ]}
}

我目前所拥有的是什么,但我只是想知道是否有更干净或更有效的方法,例如我上面建议的?

0 个答案:

没有答案
相关问题