MongoDB如果尚不存在,则将字段插入现有文档

tpa*_*pae 5 mongodb mongodb-php

我有这样的文件(这是非常简化的):

{
    'name' : 'test',
    'age' : 16
}
Run Code Online (Sandbox Code Playgroud)

还有这个

{
    'name' : 'test2'
}
Run Code Online (Sandbox Code Playgroud)

如果不存在,我想将所有'年龄'设置为14.

我怎样才能做到这一点?

MrK*_*urt 6

试试$exists 运营商:

$this->mongolib->update('people', array('age' => array('$exists' => false)), array('$set' => array('age' => 14)), array('upsert' => true, 'multiple' => true));
Run Code Online (Sandbox Code Playgroud)