MongoDB更新多重数组字段
数据的结构如下
{
"_id" : ObjectId("5cd915e012d07135645cf8e9"),
"functionPoint" : "xxx",
"domainName" : "xxx",
"statement" : [
{
"name" : "xxx",
"namespace" : "aircondition",
"statementAttributes" : {
"~script" : {
"flag" : 1.0
}
}
]
},
{
"name" : "xxx",
"namespace" : "xxx",
"statementAttributes" : {
"action" : "off",
"function_name" : "a_c"
}
}
]
}
如果要将 flag转成NumberInt,写法如下
db.user.updateMany({
'statement.statementAttributes.~script.flag': 1.0
}, {
$set: {
'statement.$.statementAttributes.~script.RECOG_SLOT_Delay_Flag': NumberInt("1")
}
})