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

MongoDで配列値を使用して特定のドキュメントを取得する


特定のドキュメントをフェッチするには、toArray()とともにlimit()を使用します。 toArray()メソッドは、カーソルからのすべてのドキュメントを含む配列を返します。ドキュメントを使用してコレクションを作成しましょう-

> db.demo482.insertOne({_id:1,"StudentInformation":[{"Name":"Chris","Age":21}]});
{ "acknowledged" : true, "insertedId" : 1 }
> db.demo482.insertOne({_id:2,"StudentInformation":[{"Name":"Bob","Age":23}]});
{ "acknowledged" : true, "insertedId" : 2 }
> db.demo482.insertOne({_id:3,"StudentInformation":[{"Name":"David","Age":20}]});
{ "acknowledged" : true, "insertedId" : 3 }

find()メソッドを使用してコレクションからすべてのドキュメントを表示する-

> db.demo482.find();

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

{ "_id" : 1, "StudentInformation" : [ { "Name" : "Chris", "Age" : 21 } ] }
{ "_id" : 2, "StudentInformation" : [ { "Name" : "Bob", "Age" : 23 } ] }
{ "_id" : 3, "StudentInformation" : [ { "Name" : "David", "Age" : 20 } ] }

以下は、limit()-

を使用して特定のドキュメントをフェッチするためのクエリです。
> db.demo482.find({}).limit(2).toArray();

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

[
   {
      "_id" : 1,
      "StudentInformation" : [
         {
            "Name" : "Chris",
            "Age" : 21
         }
      ]
   },
   {
      "_id" : 2,
      "StudentInformation" : [
         {
            "Name" : "Bob",
            "Age" : 23
         }
      ]
   }
]

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

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

  2. MongoDBで配列をクエリして、特定の値をフェッチします

    配列から特定の値をフェッチするには、$ projectとともにaggregate()を使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo761.insertOne( ...    { ...       "details": [ ...          { ...             "student": { ...     &nb