Javascript Mongo:更新文档(如果存在),或者插入自定义文档
我收集了以下文件:Javascript Mongo:更新文档(如果存在),或者插入自定义文档,javascript,node.js,mongodb,upsert,Javascript,Node.js,Mongodb,Upsert,我收集了以下文件: groupId: '1234', info: [ { name: 'ABC', count: 10 }, { category: 'XYZ', count: 15 } ] 现在,流程应该如下所示。如果存在groupId(如“9876”),则更新“xname”(如ABC)的计数,否则插入以下默认文档: g
groupId: '1234',
info: [
{
name: 'ABC',
count: 10
},
{
category: 'XYZ',
count: 15
} ]
现在,流程应该如下所示。如果存在groupId(如“9876”),则更新“xname”(如ABC)的计数,否则插入以下默认文档:
groupId: '9876',
info: [
{
name: 'ABC',
count: 1
},
{
category: 'XYZ',
count: 0
} ]
如何在单个查询中实现这一点?我尝试了以下方法,但没有成功:
dbase.collection("summary").updateOne(
{
groupId: "9876",
"info.name": 'ABC'
},
{
$inc: { "info.$.count": 1 } ,
$setOnInsert : {defaultObj}
},
{upsert:true}
)