$ Eşleşmesinde OR yapmak mümkün mü?
Bunun gibi bir şey demek istiyorum:
db.articles.aggregate(
{ $or: [ $match : { author : "dave" }, $match : { author : "john" }] }
);
$ Eşleşmesinde OR yapmak mümkün mü?
Bunun gibi bir şey demek istiyorum:
db.articles.aggregate(
{ $or: [ $match : { author : "dave" }, $match : { author : "john" }] }
);
Yanıtlar:
Eğer nerede bu özel durumda, $or
-ing aynı alanı , $in
operatör okunabilirliği artırır nedeniyle de, daha iyi bir seçim olacaktır:
$match: {
'author': {
$in: ['dave','john']
}
}
MongoDB belgelerine göre, $in
bu durumda kullanılması önerilir:
$ veya $ in
Aynı alanın değerini eşitlik denetler olan $ veya <ifadeler> ile kullanırken, $ veya operatörü yerine $ in operatörünü kullanın.
https://docs.mongodb.com/manual/reference/operator/query/or/#or-versus-in