【发布时间】:2014-03-15 07:54:00
【问题描述】:
如果文档不存在,我想添加一个文档,否则将一个元素添加到其中一个子文档中。
db.test.update(
{
name : 'Peter'
},
$setOnInsert : {
name : 'Peter',
visits: { 'en' : ['today'], 'us' : [] }
},
$push : {
visits.en : 'today'
},
{ upsert : true }
)
如果Peter 存在,则将一个元素添加到其visists.en 或visists.us 数组中。否则,为Peter 创建一个文档。此文档的格式应为 visits,其中应包含当前元素 ('today')。
我的问题是我有"have conflicting mods in update"。
IE。 (afaik),我不能在一个查询中写两件事。然而,我该如何解决这个困境呢?
【问题讨论】: