Mongo DB删除字段和值

Jac*_*nto 6 mongodb

在mongo shell中,如何删除所有出现 "id" : "1"的字段值总是不同的.我会使用$ unset运算符吗?那会删除价值和字段吗?

McG*_*gle 16

你说要删除所有出现的字段,对吧?如果是这样,那么它应该是这样的:

db.collection.update( 
    { id: { $exists: true } },  // criteria
    { $unset: { id: 1 } },      // modifier
    false,                      // no need to upsert
    true                        // multi-update
);
Run Code Online (Sandbox Code Playgroud)

  • @Jacinto 不,我的答案中的代码块将删除 *id* 的所有实例。*id: 1* 语法具有误导性,但 *1* 确实意味着“真实”。见这里:http://www.mongodb.org/display/DOCS/Updating#Updating-%24unset (3认同)