开发者社区> 问答> 正文

MongoDB,从数组中删除对象

文件:

{ _id: 5150a1199fac0e6910000002, name: 'some name, items: [{ id: 23, name: 'item name 23' },{ id: 24, name: 'item name 24' }] } 有没有办法从数组中提取特定对象?IE如何从项数组中提取ID为23的整个项对象。

我试过了:

db.mycollection.update({'_id': ObjectId("5150a1199fac0e6910000002")}, {$pull: {id: 23}}); 但是我很确定我没有正确使用'pull'。据我了解,pull将从数组中拉出字段,而不是对象。

关于如何将整个对象从数组中拉出的任何想法。

另外,我尝试在mongoose / nodejs中执行此操作,也不确定这种类型的内容是否在mongoose API中,但我找不到它。 问题来源于stack overflow

展开
收起
保持可爱mmm 2020-02-08 20:08:34 442 0
1 条回答
写回答
取消 提交回答
  • 尝试..

    db.mycollection.update( {'_id': ObjectId("5150a1199fac0e6910000002")}, { $pull: { "items" : { id: 23 } } }, false, true );

    2020-02-08 20:08:47
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Data as a Service - 数据即服务 -- MongoDB⾼级应⽤模式 立即下载
开源数据库 MongoDB 专场 MongoDB疑难杂症分析及优化 立即下载
饿了么高级架构师陈东明:MongoDB是如何逐步提高可靠性的 立即下载