MongoDB
 Computer >> コンピューター >  >> プログラミング >> MongoDB

MongoDBのオブジェクトの配列で2つの特定のIDを持つすべてのドキュメントを検索しますか?


これには$and演算子を使用できます。まず、ドキュメントを使用してコレクションを作成しましょう-

> db.twoSpecificIdsDemo.insertOne(
...   {
...      PlayerId:1,
...      "PlayerDetails": [{
...         id: 100,
...         "PlayerName":"Chris"
...      },{
...         id: 101,
...         "PlayerName":"Sam"
...      },{
...         id: 102,
...         "PlayerName":"Robert"
...      },{
...         id: 103,
...         "PlayerName":"Carol"
...      }]
...   }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd3e130edc6604c74817ce4")
}
> db.twoSpecificIdsDemo.insertOne(
...   {
...      PlayerId:1,
...      "PlayerDetails": [{
...         id: 104,
...         "PlayerName":"Mike"
...      },{
...         id: 105,
...         "PlayerName":"Bob"
...      },{
...         id: 102,
...         "PlayerName":"Ramit"
...      },{
...         id: 106,
...         "PlayerName":"David"
...      }]
...   }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd3e167edc6604c74817ce5")
}

以下は、find()メソッドを使用してコレクションからすべてのドキュメントを表示するためのクエリです-

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

これにより、次の出力が生成されます-

{
   "_id" : ObjectId("5cd3e130edc6604c74817ce4"),
   "PlayerId" : 1,
   "PlayerDetails" : [
      {
         "id" : 100,
         "PlayerName" : "Chris"
      },
      {
         "id" : 101,
         "PlayerName" : "Sam"
      },
      {
         "id" : 102,
         "PlayerName" : "Robert"
      },
      {
         "id" : 103,
         "PlayerName" : "Carol"
      }
   ]
}
{
   "_id" : ObjectId("5cd3e167edc6604c74817ce5"),
   "PlayerId" : 1,
   "PlayerDetails" : [
      {
         "id" : 104,
         "PlayerName" : "Mike"
      },
      {
         "id" : 105,
         "PlayerName" : "Bob"
      },
      {
         "id" : 102,
         "PlayerName" : "Ramit"
      },
      {
         "id" : 106,
         "PlayerName" : "David"
      }
   ]
}

これは、MongoDBのオブジェクトの配列に2つの特定のIDを持つすべてのドキュメントを検索するためのクエリです-

> db.twoSpecificIdsDemo.find( { $and : [ { "PlayerDetails.id" : 102 }, { "PlayerDetails.id" : 103 } ] } ).pretty();

これにより、次の出力が生成されます-

{
   "_id" : ObjectId("5cd3e130edc6604c74817ce4"),
   "PlayerId" : 1,
   "PlayerDetails" : [
      {
         "id" : 100,
         "PlayerName" : "Chris"
      },
      {
         "id" : 101,
         "PlayerName" : "Sam"
      },
      {
         "id" : 102,
         "PlayerName" : "Robert"
      },
      {
         "id" : 103,
         "PlayerName" : "Carol"
      }
   ]
}

  1. MongoDBドキュメントで特定の値を超える値を見つけますか?

    特定の値を超える値を検索するには、MongoDBで$gteを使用する構文を次に示します- db.yourCollectionName.find({yourFieldName:{$gte:yourValue}}); ドキュメントを使用してコレクションを作成しましょう- > db.demo571.insertOne({"Price":140});{    "acknowledged" : true, "insertedId" : ObjectId("5e909b3439cfeaaf0b97b587&q

  2. MongoDBを使用して、特定のネストされたドキュメントのオブジェクトの配列をクエリしますか?

    ネストされたドキュメントのオブジェクトの配列をクエリするには、find()を使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo763.insertOne( ...    { ...       _id:1, ...       CountryName:"US", ...       "studentInformation": [ ...          {