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

ドキュメントを配列にプッシュするMongoDBクエリ


ドキュメントを配列にプッシュするには、update()とともに$pushを使用します。ドキュメントを使用してコレクションを作成しましょう-

>db.demo310.insertOne({"Name":"Chris","details":[{"Id":101,"Subject":"MySQL"},{"Id":102,"Subject":"MongoDB"}]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e50cabdf8647eb59e562043")
}

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

> db.demo310.find();

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

{
   "_id" : ObjectId("5e50cabdf8647eb59e562043"), "Name" : "Chris", "details" : [
      { "Id" : 101, "Subject" : "MySQL" }, { "Id" : 102, "Subject" : "MongoDB" }
   ]
}

以下は、ドキュメントをプッシュするためのクエリです-

> db.demo310.update({ _id:ObjectId("5e50cabdf8647eb59e562043")},
...{ $push: {"details": {
...   "Id" : 103,
...   "Subject": "Java"
...   }}
...}
...)
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

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

> db.demo310.find();

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

{
   "_id" : ObjectId("5e50cabdf8647eb59e562043"), "Name" : "Chris", "details" : [
      { "Id" : 101, "Subject" : "MySQL" }, { "Id" : 102, "Subject" : "MongoDB" },
      { "Id" : 103, "Subject" : "Java" }
   ] 
}

  1. ドキュメントから配列要素を削除するMongoDBクエリ?

    次の構文に示すように、$pullを使用してMongoDBドキュメントから配列要素を削除します- db.yourCollectionName.update( { },{ $pull: { yourFieldName: yourValue }},{multi:true }); まず、ドキュメントを使用してコレクションを作成しましょう- >db.removeArrayElementsDemo.insertOne({"AllPlayerName":["John","Sam","Carol","David&

  2. idがドキュメントフィールドの配列値と等しい場合に除外するMongoDBクエリ

    このために、$inと一緒に$notを使用します。ドキュメントを使用してコレクションを作成しましょう- [    {       id: "101",       subjectid: [          "102"       ]    },    {       id: "102",   &nb