如何删除MongoDB中列表中的重复值?
您可以将聚合框架与$setUnion运算符一起使用。让我们首先创建一个包含文档的集合-
> db.removeDuplicatesDemo.insertOne({"InstructorName":"Chris","InstructorAge":34,"InstructorSubject":
["Java","C","Java","C++","MongoDB","MySQL","MongoDB"]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5cb9d96c895c4fd159f80807")
}以下是在find()方法的帮助下显示集合中所有文档的查询-
> db.removeDuplicatesDemo.find().pretty();
这将产生以下输出-
{
"_id" : ObjectId("5cb9d96c895c4fd159f80807"),
"InstructorName" : "Chris",
"InstructorAge" : 34,
"InstructorSubject" : [
"Java",
"C",
"Java",
"C++",
"MongoDB",
"MySQL",
"MongoDB"
]
}以下是删除MongoDB列表中重复值的查询-
> db.removeDuplicatesDemo.aggregate([
... { "$project": {
... "InstructorName":1,
... "InstructorAge" :1,
... "InstructorSubject" :{ "$setUnion": [ "$InstructorSubject", [] ] }
... }}
... ]).pretty();这将产生以下输出-
{
"_id" : ObjectId("5cb9d96c895c4fd159f80807"),
"InstructorName" : "Chris",
"InstructorAge" : 34,
"InstructorSubject" : [
"C",
"C++",
"Java",
"MongoDB",
"MySQL"
]
}热门推荐
10 儿子立冬祝福语简短独特
11 对当兵的祝福语简短
12 侄儿高考试祝福语简短
13 伴郎红包祝福语朋友简短
14 媳妇生日简短祝福语朋友
15 公司年会祝福语简短最好
16 元旦感恩祝福语简短大全
17 红包祝福语简短10字
18 周六早晨祝福语简短