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

MongoDB配列から特定の要素を取得するにはどうすればよいですか?


集約フレームワークを使用して、MongoDB配列から特定の要素を取得できます。概念を理解するために、ドキュメントを使用してコレクションを作成しましょう。ドキュメントを使用してコレクションを作成するためのクエリは次のとおりです-

> db.getParticularElement.insertOne({"InstructorName":"Larry","InstructorTechnicalSubject":["Java","C","C++","MongoDB","MySQL","SQL Server"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c7ee027559dd2396bcfbfb1")
}

find()メソッドを使用して、コレクションのすべてのドキュメントを表示します。クエリは次のとおりです-

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

以下は出力です-

{
   "_id" : ObjectId("5c7ee027559dd2396bcfbfb1"),
   "InstructorName" : "Larry",
   "InstructorTechnicalSubject" : [
      "Java",
      "C",
      "C++",
      "MongoDB",
      "MySQL",
      "SQL Server"
   ]
}

配列から特定の要素を取得するためのクエリは次のとおりです-

> db.getParticularElement.aggregate([
   ... {
      ... $project:
      ... {
         ... ElementFromAnArray: 1,
         ... FourthElement: { $arrayElemAt: [ "$InstructorTechnicalSubject", 3] },
         ...
      ... }
   ... }
... ]);

以下は出力です-

{ "_id" : ObjectId("5c7ee027559dd2396bcfbfb1"), "FourthElement" : "MongoDB" }

  1. MongoDBで配列交差のデータを取得するにはどうすればよいですか?

    MongoDBでの配列の相互作用については、aggregate()で$setIntersectionを使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo625.insertOne( ...    { ...       Name: "John", ...       Marks: [56,98,60] ...    } ... ); {    "acknowledged" : true, &nbs

  2. MongoDB配列の要素を削除するにはどうすればよいですか?

    要素を削除するには、MongoDBで$ pullを更新して、使用します。 $ pull演算子は、既存の配列から、指定された条件に一致する1つまたは複数の値のすべてのインスタンスを削除します。 まず、ドキュメントを使用してコレクションを作成しましょう- db.demo541.insertOne({"software":{"services":["gmail","facebook","yahoo"]}});{    "acknowledged" : true