MongoDBクエリの使用:
1。でオブジェクトを見つけるにはどうすればよい_id A3
ですか?
2.どのように私は、オブジェクトを更新してしまう_id A3
のA4
?
注意:データベースはオブジェクトの配列であり、1つのキーにオブジェクトの配列があります
[{
"project_name": "ProjectA",
"issues":[{"issue_title":"TitleA1", "_id":"A1"},
{"issue_title":"TitleA2","_id":"A2"},
{"issue_title":"TitleA3","_id":"A3"}]
},
{
"project_name": "ProjectB",
"issues":[{"issue_title":"TitleB1", "_id":"B1"},
{"issue_title":"TitleB2","_id":"B2"},
{"issue_title":"TitleB3","_id":"B3"}]
}
]
ドット表記を使用して、ネストされたオブジェクトを$ matchし、$ unwindと$ replaceRootを_id
使用して、ネストされたオブジェクトをトップレベルに昇格させることができます。
db.collection.aggregate([
{
$unwind: "$issues"
},
{
$match: { "issues._id": "A3" }
},
{
$replaceRoot:{ newRoot: "$issues" }
}
])
db.col.updateOne({ "project_name": "ProjectA", "issues._id": "A3" }, { $set: { "issues.$._id": "A4" } })
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加