MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Qual é a diferença entre os operadores .in() e all.() no mangusto?


Aqui está a explicação de mongodb.org:

$todos

O operador $all é semelhante a $in, mas em vez de corresponder a qualquer valor na matriz especificada, todos os valores da matriz devem ser correspondidos. Por exemplo, o objeto

{a:[1, 2, 3]}

seria correspondido por

db.coisas.find( { a:{ $todos:[ 2, 3 ] } } );

mas não

db.coisas.find( { a:{ $todos:[ 2, 3, 4 ] } } );

Um array pode ter mais elementos do que os especificados pelos critérios $all. $all especifica um conjunto mínimo de elementos que devem ser correspondidos.

Leia mais sobre os operadores do mongodb aqui