首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >mongodb删除所有早于指定日期的日期

mongodb删除所有早于指定日期的日期
EN

Stack Overflow用户
提问于 2014-03-15 17:53:11
回答 4查看 32K关注 0票数 12

我有以下数据。

代码语言:javascript
运行
复制
{
    deviceID: 186,
    date: "2014-3-15"
}
{
    deviceID: 186,
    date: "2014-3-14"
}
{
    deviceID: 186,
    date: "2014-3-13"
}

以及一些较低的日期,如2014-3-9 , 8 ,7 ,6等。

在做db.coll.remove({date:{$lte:"2014-3-5"}})

Mongo也去掉了15,14,13,但保留了个位数的日期。这是不是因为日期是一个字符串?

我不知道如何格式化日期,以便我可以删除所有低于某个日期的日期。

这应该是一个清理过程,删除日期早于指定日期的所有文档。

EN

Stack Overflow用户

发布于 2017-11-08 09:23:06

如果要从MongoDB中删除早于指定日期的数据,则必须确保该日期。

要检查输入的格式是否正确,最简单的方法是在查询中使用它之前对其进行测试。

例如,如果您想在Mongo shell中获取ISODate格式的当前日期,只需输入new Date,您就会获得Mongo格式的当前日期。

我已经在Mongo shell中尝试了以下内容:

代码语言:javascript
运行
复制
new Date(2017, 11, 1)

然后它会返回

代码语言:javascript
运行
复制
ISODate("2017-11-30T16:00:00Z")

这不是我想要的。

我想要的是在2017年11月1日之前删除数据。

以下是对我有效的方法:

代码语言:javascript
运行
复制
new Date("2017-11-01")

然后返回:

代码语言:javascript
运行
复制
ISODate("2017-11-01T00:00:00Z")

这就是我想要的。

票数 2
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22422178

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档