ใช้ Aggregation Framework ร่วมกับตัวดำเนินการ $setUnion เพื่อลบค่าซ้ำในอาร์เรย์
ตัวอย่างการใช้งาน
สร้างคอลเลกชันพร้อมข้อมูลที่มีค่าซ้ำในอาร์เรย์ InstructorSubject:
แสดงเอกสารทั้งหมด:
{ "_id" : ObjectId("5cb9d96c895c4fd159f80807"), "InstructorName" : "Chris", "InstructorAge" : 34, "InstructorSubject" : [ "Java", "C", "Java", "C++", "MongoDB", "MySQL", "MongoDB" ] }ลบค่าซ้ำด้วย $setUnion
ผลลัพธ์ (ค่าถูกลบซ้ำและเรียงลำดับอัตโนมัติ):
หลักการ:
$setUnionรับอาร์เรย์หลายตัวมารวมกันเป็นเซต (ไม่ซ้ำ) การรวมกับ[](อาร์เรย์ว่าง) จะทำให้ได้ค่าไม่ซ้ำจากอาร์เรย์เดิม พร้อมเรียงลำดับอัตโนมัติ