Совместимость агрегатов MongoDB OR

Возможно ли сделать OR в $match?

Я имею в виду что-то вроде этого:

db.articles.aggregate(
    { $or: [ $match : { author : "dave" }, $match : { author : "john" }] }
);

Ответ 1

$match: { $or: [{ author: 'dave' }, { author: 'john' }] }

Так же, поскольку оператор $match просто берет то, что вы обычно помещаете в функцию find()

Ответ 2

В частности, ваш вопрос, заданный выше i.e

db.articles.aggregate(
    { $or: [ $match : { author : "dave" }, $match : { author : "john" }] }
);

Я бы порекомендовал пойти с оператором $in для того же i.e запроса следующим образом:

$match : { 'author' : { $in: ['dave','john'] }