我正在嘗試使用陣列的第一個元素更新欄位。
該模型:
{
name: { type: ObjectId },
names: { type: [ObjectId] }
}
請求:
Model.updateMany({},
{
$set: {
name: {
$first: '$names',
},
},
})
但我收到一個錯誤:
由于“BSONTypeError”,路徑“name”處的值“{'$first': '$names'}”(型別物件)的值轉換為 ObjectId 失敗
你知道用陣列第一個元素的值設定欄位的另一種方法嗎?我應該改用聚合嗎?
uj5u.com熱心網友回復:
您需要使用聚合管道進行更新。
Model.updateMany({},
[
{
$set: {
name: {
$first: '$names',
},
},
}
])
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/504009.html
標籤:数组 mongodb 猫鼬 mongodb查询 mongodb-更新