在 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 瀏覽

開啟你的職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.