使用mgo在mongo中删除所有早于使用_id的日期的文档
Posted
技术标签:
【中文标题】使用mgo在mongo中删除所有早于使用_id的日期的文档【英文标题】:Delete all the document older than a date using _id in mongo using mgo 【发布时间】:2016-03-28 12:29:28 【问题描述】:我在Golang
和mgo
工作,我想使用_id
值删除集合中早于指定日期的所有文档。
到目前为止,我尝试使用结构 NewObjectIdWithTime
创建一个虚拟 objectId,之后我尝试使用删除文档
collection.Remove(bson.M"_id": bson.M"$lt": objectId)
但我没有得到任何结果,有什么建议吗?
【问题讨论】:
为什么有人要对这样的问题投反对票? 我同意。这个问题很有用,虽然可以改进。 我注意到很多关于 MongoDB 问题的奇怪反对意见。我想这里有些人不喜欢 MongoDB... 【参考方案1】:我真的不喜欢回答自己,但由于我从 *** 社区获得的唯一帮助是负面评价(没有任何解释),我发布了解决方案:
问题是 mgo 有 RemoveAll 其中删除所有符合条件的元素,所以我的新查询是:collection.RemoveAll(bson.M"_id": bson.M"$lt": objectId)
【讨论】:
以上是关于使用mgo在mongo中删除所有早于使用_id的日期的文档的主要内容,如果未能解决你的问题,请参考以下文章