在 MongoDB 中针对索引处的 n 查找“true”值查询数组?


你可以为此使用点(.)符号。我们先创建一个有文档的集合 -

>db.containsTrueValueDemo.insertOne({"IsMarried":[true,false,true,true,true,true,false,true,false,false,true]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd5039c2cba06f46efe9ef5")
}

以下是通过 find() 方法显示集合中的所有文档的查询 -

> db.containsTrueValueDemo.find().pretty();

这将产生如下输出 -

{
   "_id" : ObjectId("5cd5039c2cba06f46efe9ef5"),
   "IsMarried" : [
      true,
      false,
      true,
      true,
      true,
      true,
      false,
      true,
      false,
      false,
      true
   ]
}

索引 n 处的 "true" 值查询数组 -

> db.containsTrueValueDemo.find({'IsMarried.2' : true});

这将产生如下输出 -

{ "_id" : ObjectId("5cd5039c2cba06f46efe9ef5"), "IsMarried" : [ true, false, true, true, true, true, false, true, false, false, true ] }

索引 n 处的 "true" 值查询数组 -

> db.containsTrueValueDemo.find({$and :  [ {'IsMarried.0' : true}, {'IsMarried.2' : true} ] } );

这将产生如下输出 -

{ "_id" : ObjectId("5cd5039c2cba06f46efe9ef5"), "IsMarried" : [ true, false, true, true, true, true, false, true, false, false, true ] }

更新于: 30-7-2019

115 浏览

开启你的职业生涯

通过完成课程获得认证

开始
广告