我的mongodb包含
格式的文档 {
"name": "device_name",
"LAN": [
{
"MAC": "00-14-22-01-23-45",
"IP": "192.168.1.10",
},
{
"MAC": "00:25:96:FF:FE:12:34:56",
"IP": "192.168.1.54",
}
],
"otherdata": "somedata",
}
我需要一个函数,该函数将获取与那些文档相对应的结构数组,获取这些结构的mac地址列表,并在db中向上插入数据,即,如果db中的文档中LAN包含对象, MAC地址列表中的MAC-更新“ otherdata”,否则只需创建新文档即可。问题是我有多个mac地址作为输入,因此我需要使用in $。由于新数据特定于每个文档,因此我需要知道当前要更新的内容。
正如我所看到的,我需要遍历mac-address并为它们中的每个请求单独的upsert请求,这似乎并不有效。还有其他方法吗?