in 只需满足( )内的某一个值即可, 而$all 必须满足[ ]内的所有值,

> db.table1.find({});

{ "_id" : ObjectId("56a5ce00dd3b78b7f50a298d"), "name" : [ 1, 2, 34, 54, 5, 6, 5 ], "age" : 1222 }

{ "_id" : ObjectId("56a5ce18dd3b78b7f50a298e"), "name" : [ 1, 2, 88, 77, 66, 5, 9, 54 ], "age" : 1222 }

只查5 都能查出来:

  db.table1.find({'name':{$in:[5]}})

{ "_id" : ObjectId("56a5ce00dd3b78b7f50a298d"), "name" : [ 1, 2, 34, 54, 5, 6, 5 ], "age" : 1222 }

{ "_id" : ObjectId("56a5ce18dd3b78b7f50a298e"), "name" : [ 1, 2, 88, 77, 66, 5, 9, 54 ], "age" : 1222 }

> db.table1.find({'name':{$in:[88]}})

{ "_id" : ObjectId("56a5ce18dd3b78b7f50a298e"), "name" : [ 1, 2, 88, 77, 66, 5, 9, 54 ], "age" : 1222 }

 

用all

> db.table1.find({'name':{$all:[5,88]}})

{ "_id" : ObjectId("56a5ce18dd3b78b7f50a298e"), "name" : [ 1, 2, 88, 77, 66, 5, 9, 54 ], "age" : 1222 }

相关文章:

  • 2022-12-23
  • 2021-10-16
  • 2021-04-29
  • 2022-01-06
  • 2021-07-05
猜你喜欢
  • 2021-11-01
  • 2022-12-23
  • 2021-10-10
  • 2021-07-23
  • 2022-01-09
  • 2022-03-04
相关资源
相似解决方案