微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

复杂的MongoDB查询,我在文档中找不到清晰的示例

如何解决复杂的MongoDB查询,我在文档中找不到清晰的示例

我的目标: 我在服务器端有一个对象this.data。 并将toBeEdited名称存储在db中。 为了简单起见,我将仅提及对象的几个属性

this.data = {  
totalMCQs:2,quizTitle:'Hello World',totalChoices:2,mcq1:'What is meant by HTML?',choiceA1:'blah blah',choiceB1:'Hyper text markuP Language',ans1:'B',mcq2:'What is meant by CSS?',choiceA2:'blah blah',choiceB2:'Cascading style sheets',ans1:'B'  
}

toBeEdited = {  
_id:3000,_anotherId:2000,totalMCQs:1,quizTitle:'Noob programmer',totalChoices:3,mcq1:'What is meant by JS',choiceB1:'blah blah',choiceC1:'javascript',ans1:'C'  
}  

应用查询toBeEdited后,应进行以下更新:

toBeEdited = {  
_id:3000,totalMCQs:2,ans1:'B'  
}  

我需要一个单一的mongodb查询,该查询将覆盖toBeEdited文档中相同属性的值,并向toBeEdited文档中添加其他属性,而对某些属性(例如{ {1}}文档。

注意: toBeEdited的mcqs / choices较少,而this.data的mcqs / choices也更多。在这种情况下,查询应覆盖toBeEdited文档中相同属性的值,并删除toBeEdited文档中的其他属性,同时不对toBeEdited文档中存在的ID等某些属性做任何事情。

我已经解决了这个问题,但是使用多个查询,我只需要一个查询即可。

当前代码
https://i.stack.imgur.com/z3LGa.png

谢谢!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。