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

MongoDBのサブドキュメントでドキュメントを分割する


ドキュメントをサブドキュメントで分割するには、MongoDBで$unwindを使用します。ドキュメントを使用してコレクションを作成しましょう-

> db.demo276.insertOne({"Name":"Chris","Subjects":["MySQL","MongoDB"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e48f953dd099650a5401a51")
}

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

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

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

{
   "_id" : ObjectId("5e48f953dd099650a5401a51"),
   "Name" : "Chris",
   "Subjects" : [
      "MySQL",
      "MongoDB"
   ]
}

以下は、ドキュメントをそのサブドキュメントで分割するためのクエリです-

> db.demo276.aggregate( [ { $unwind : "$Subjects" } ] )

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

{ "_id" : ObjectId("5e48f953dd099650a5401a51"), "Name" : "Chris", "Subjects" : "MySQL" }
{ "_id" : ObjectId("5e48f953dd099650a5401a51"), "Name" : "Chris", "Subjects" : "MongoDB" }

  1. MongoDBのサブドキュメントでサブドキュメントをフィルタリングしますか?

    これには、$ unwindと一緒にaggregate()を使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo583.insert([ ...    { ...       "details1" : [ ...          { ...             "details2" : [ ...         &

  2. MongoDBでサブドキュメントを追加し続ける方法は?

    サブドキュメントを追加するには、MongoDBで$pushを使用します。 update()は更新に使用されます。ドキュメントを使用してコレクションを作成しましょう- > db.demo587.insertOne({"id":101,"details":[{Name:"Chris",Age:21,Marks:57}]});{    "acknowledged" : true, "insertedId" : ObjectId("5e92ba01fd2d90c177