Voici comment faire des opérations logiques simples dans votre recherche.
$or
est l'opérateur logique ou.
Exemple pour retrouver des films de plusieurs genres :
> db.movies.find({ $or: [{genre: 'Horreur'}, {genre: 'Suspense'}, {genre: 'Thriller'}] }).pretty()
$and
est l'opérateur logique et.
Exemple pour retrouver les films dont au moins un acteur est né en 1953 et un autre en 1955 :
> db.movies.find({ $and: [{'actors.birth_date': '1953'}, {'actors.birth_date': '1955'}] }).pretty()
On peut faire de multiples combinaisons :
> db.movies.find({ $and: [{$or: [{genre: 'Horreur'}, {genre: 'Suspense'}, {genre: 'Thriller'} ]}, {$or: [{year: 1959}, {year: 1990}] }] }).pretty()