正在根据日期相关条件更新 mongo 个文档
Updating mongo documents based on date related condition
我有一个 MongoDB 用户集合。用户文档是这样的:
{
"_id" : "REtKBfimJhmGcRtgQ",
"createdAt" : ISODate("2015-12-18T21:30:40.342Z"),
"username" : "ziedmahdi",
"firstName" : "Feki",
"schedules" : [{
"date" : ISODate("2015-12-24T00:00:00Z"),
"periodsOfTime" : [{
"startTime" : "10:00",
"endTime" : "11:00"
}]
}, {
"date" : ISODate("2015-12-27T00:00:00Z"),
"periodsOfTime" : [{
"startTime" : "10:00",
"endTime" : "11:00"
}]
}, {
"date" : ISODate("2015-12-31T00:00:00Z"),
"periodsOfTime" : [{
"startTime" : "10:00",
"endTime" : "11:00"
}]
}]
}
我想从用户日程表中删除两个给定日期之间的元素。
使用以下查询后,没有任何反应。
db.users.update({
_id: "REtKBfimJhmGcRtgQ"
},{
$pull: {
schedules: {
$elemMatch: { date: {
$gte: ISODate("2015-12-24T00:00:00Z"),
$lte: ISODate("2015-12-31T00:00:00Z")
}}
}
}
});
谁能帮帮我??
非常感谢
经过一些额外的尝试,我找到了解决方案。
db.users.update({
_id: "REtKBfimJhmGcRtgQ"
},{
$pull: {
schedules: {
date: {
$gte: ISODate("2015-12-24T00:00:00.000Z"),
$lte: ISODate("2015-12-31T00:00:00.000Z")
}
}
}
});
我有一个 MongoDB 用户集合。用户文档是这样的:
{
"_id" : "REtKBfimJhmGcRtgQ",
"createdAt" : ISODate("2015-12-18T21:30:40.342Z"),
"username" : "ziedmahdi",
"firstName" : "Feki",
"schedules" : [{
"date" : ISODate("2015-12-24T00:00:00Z"),
"periodsOfTime" : [{
"startTime" : "10:00",
"endTime" : "11:00"
}]
}, {
"date" : ISODate("2015-12-27T00:00:00Z"),
"periodsOfTime" : [{
"startTime" : "10:00",
"endTime" : "11:00"
}]
}, {
"date" : ISODate("2015-12-31T00:00:00Z"),
"periodsOfTime" : [{
"startTime" : "10:00",
"endTime" : "11:00"
}]
}]
}
我想从用户日程表中删除两个给定日期之间的元素。
使用以下查询后,没有任何反应。
db.users.update({
_id: "REtKBfimJhmGcRtgQ"
},{
$pull: {
schedules: {
$elemMatch: { date: {
$gte: ISODate("2015-12-24T00:00:00Z"),
$lte: ISODate("2015-12-31T00:00:00Z")
}}
}
}
});
谁能帮帮我??
非常感谢
经过一些额外的尝试,我找到了解决方案。
db.users.update({
_id: "REtKBfimJhmGcRtgQ"
},{
$pull: {
schedules: {
date: {
$gte: ISODate("2015-12-24T00:00:00.000Z"),
$lte: ISODate("2015-12-31T00:00:00.000Z")
}
}
}
});