這是我的收藏看起來像

現在假設我必須更新300count的第二個檔案。reportTypes.reasonId我可以訪問_id以及reasonId更新count. 我正在使用貓鼬來查詢我的節點應用程式中的內容。
請幫我解決這個問題,我已經被這個問題困擾了好幾天了,我嘗試了很多解決方案,但沒有任何效果。
uj5u.com熱心網友回復:
您可以通過 arrayFilters 做到這一點:
db.collection.update(
{
managerId:3
},
{
$inc:{"reportTypes.$[x].count":1}
},
{
arrayFilters:[{"x.reasonId":300 }]
}
)
操場
說明:在查詢部分指定匹配的檔案并創建匹配正確的reportTYpes陣列子檔案的arrayFilter“x”,在更新部分使用$inc操作將示例中的計數值增加1
uj5u.com熱心網友回復:
您應該使用點表示法和 $ update 運算子來執行此操作:(我假設您的集合稱為 Reason)
var conditions = {
'_id': '6244........',
'reasonTypes.reasonId': 300
}
var update = {
$inc: {
'reasonTypes.$.count': 1
}
};
Reason.update(conditions, update, function(err) {
// Handle error here
})
您可以在此處找到有關運算子的更多資訊mongo $ update 運算子
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/452694.html
