Mongodb найти все, кроме одного или двух критериев
хорошо для одного сопоставления полей я запускаю:
db.bios.find( { "Country":"Netherlands" } )
Как я могу принести все документы, но не те, что с "Country":"Netherlands"
?
также можно ли принести все документы, но без 2-х стран?
2 ответов
использовать $nin оператор
например:
db.bios.find( { Country: { $nin: ["Country1", "Country2"] } } )
и $ne только для одной страны:
db.bios.find( { Country: { $ne: "Country1" } } )
можно использовать $ne-оператор (не равно) для одного значения.
db.bios.find( { "Country": { $ne: "Netherlands" } } );
чтобы исключить более одного значения, вы можете использовать $nin (not-in) оператор, который позволяет передавать массив значений:
db.bios.find( { "Country": { $nin: [ "Netherlands", "Belgium", "Luxembourg" ] } );