【问题标题】:How to remove specific documents from MongoDB?如何从 MongoDB 中删除特定文档?
【发布时间】:2017-04-18 01:22:58
【问题描述】:

试图从 Mongo 集合中删除特定聊天。

MongoDB 中的聊天示例:

{ "_id" : "4jkq6fJbNtwEGxTzv", "user1Id" : "czA8espdEbTgz7HqG", "user2Id" : "WyvyFaAdGqEKJgcni", "messages" : [ { "timeStamp" : "Wed, 09 Nov 2016 06:19:08 GMT", "sentBy" : "czA8espdEbTgz7HqG", "text" : "testing123" } ] }

试过了:

db.chat_users.remove( {"_id": ObjectId("4jkq6fJbNtwEGxTzv")});

但是得到了:

Error: invalid object id: length

试过了:

db.user_track.remove( { access_time : {"$lt" : new Date(2016, 12, 1) } })

但是得到了:

WriteResult({ "nRemoved" : 0 })

选项 1:为什么我的对象 ID 太短?

选项 2:为什么没有删除在 12 月 1 日之前创建的聊天?

任何想法如何从 2016 年 11 月 9 日星期三删除一堆聊天?

谢谢。

【问题讨论】:

    标签: mongodb meteor collections


    【解决方案1】:

    您的 id 类不是 ObjectId! mongo 像这样存储一个普通的 ObjectId:

    "_id" : ObjectId("583aca7d7882395095bef1fc")
    

    所以把你的代码改成这样:

    db.chat_users.remove( {"_id": "4jkq6fJbNtwEGxTzv"});
    

    【讨论】:

    • 感谢 Moshsen89z。有用。我接受了你的回答。它没有公开展示,但被记录下来。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多