请帮帮我。使用Mongoose,我想检查“ViolationID”字段中是否有重复项,并删除它们,除了最后创建的一个。我想,_id:{ $lt:record._id }工作不正确。可能是某些类型的_id或记录。_id不匹配。我很困惑,因为文件在集合中不删除。
Violation.find({}, { "ViolationID": 1 })
.sort({ _id: 1 })
.then((violations) => {
violations.forEach(function (record) {
Violation.deleteMany({
_id: { $lt: record._id },
"ViolationID": record["ViolationID"],
});
});
});
不能删除的单据下面
{
_id": "649adc629b36c9ee95228d96",
"ViolationID": 98,
},
{
"_id": "649add653629f115a960d498",
"ViolationID": 98
}
我试过这个Remove duplicate documents based on field和其他线程,这些情况不适合我
1条答案
按热度按时间4szc88ey1#
我不明白为什么它不工作。无论如何,可能的方法是这样的: