我有一个名为users
的集合,详情如下
[{
"userId": "00UPQAARGT7",
"userPreferences": [{
"pId": "59SDS64675A00096D48CB",
"pData": [{
"name": "FORMAT",
"value": "CSV"
},
{
"name": "LAN",
"value": "E"
}
]
},
{
"pId": "59SDS64675A00096D59DB",
"pData": [{
"name": "FORMAT",
"value": "DOC"
},
{
"name": "LAN",
"value": "N"
}
]
}
]},
{
"userId": "02UPQAARST7",
"userPreferences": [
{
"pId": "59SDS64675A00096D48DB",
"pData": [{
"name": "FORMAT",
"value": "CSV"
},
{
"name": "LAN",
"value": "N"
}
]
},
{
"pId": "59SDS64675A00096D59DB",
"pData": [{
"name": "FORMAT",
"value": "PPT"
},
{
"name": "LAN",
"value": "N"
}
]
}
]}
]
我想将userPreferences.pData.value
设置为"TAB"
,其中userPreferences.pData.name
是"FORMAT"
和userPreferences.pData.value
到"FRN"
,其中userPreferences.pData.name
是"LAN"
但是想要应用条件userId
在["00UPQAARGT7", "02UPQAARST7"]
和userPreferences.pId
在["59SDS64675A00096D48CB","59SDS64675A00096D59DB"]
任何帮助如何在mongodb中进行单一查询
我正在使用mongodb 3.4.1版本
您不能以您希望的方式执行此操作,原因有两个:
所以你基本上留下了在客户端进行更改的旧的(不幸的是更慢)替代方案,你可以找到大量的例子,例如:这里: