Est-il possible de faire un OU dans le $match ?
Je veux dire quelque chose comme ça :
db.articles.aggregate(
{ $or: [ $match : { author : "dave" }, $match : { author : "john" }] }
);
Est-il possible de faire un OU dans le $match ?
Je veux dire quelque chose comme ça :
db.articles.aggregate(
{ $or: [ $match : { author : "dave" }, $match : { author : "john" }] }
);
Dans ce cas particulier, où vous êtes $or
-ing le même domaine le $in
serait un meilleur choix, également parce qu'il améliore la lisibilité :
$match: {
'author': {
$in: ['dave','john']
}
}
D'après la documentation de MongoDB, l'utilisation de l'option $in
est recommandé dans ce cas :
$or contre $in
Lorsque l'on utilise $or avec des <expressions> qui sont des égalités d'égalité pour la valeur du même champ, utilisez l'opérateur $in au lieu de l'opérateur de l'opérateur $or.
https://docs.mongodb.com/manual/reference/operator/query/or/#or-versus-in
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.