Ответ 1
$match: { $or: [{ author: 'dave' }, { author: 'john' }] }
Так же, поскольку оператор $match
просто берет то, что вы обычно помещаете в функцию find()
Возможно ли сделать OR в $match?
Я имею в виду что-то вроде этого:
db.articles.aggregate(
{ $or: [ $match : { author : "dave" }, $match : { author : "john" }] }
);
$match: { $or: [{ author: 'dave' }, { author: 'john' }] }
Так же, поскольку оператор $match
просто берет то, что вы обычно помещаете в функцию find()
В частности, ваш вопрос, заданный выше i.e
db.articles.aggregate(
{ $or: [ $match : { author : "dave" }, $match : { author : "john" }] }
);
Я бы порекомендовал пойти с оператором $in
для того же i.e запроса следующим образом:
$match : { 'author' : { $in: ['dave','john'] }