ในการแยกคำแรกที่แตกต่างจากสตริง ให้ใช้ค่าที่ต่างกัน () ให้เราสร้างคอลเลกชันที่มีเอกสารก่อน -
> db.distinctFirstWordDemo.insertOne( { "_id": 100, "StudentName":"John", "StudentFeature": "John is a good player", "Subject":"MongoDB" } ); { "acknowledged" : true, "insertedId" : 100 } > db.distinctFirstWordDemo.insertOne( { "_id": 101, "StudentName":"Carol", "StudentFeature": "Carol is not a good player", "Subject":"MongoDB" } ); { "acknowledged" : true, "insertedId" : 101 }
แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.distinctFirstWordDemo.find().pretty();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : 100, "StudentName" : "John", "StudentFeature" : "John is a good player", "Subject" : "MongoDB" } { "_id" : 101, "StudentName" : "Carol", "StudentFeature" : "Carol is not a good player", "Subject" : "MongoDB" }
ต่อไปนี้เป็นแบบสอบถามเพื่อให้ได้คำแรกที่แตกต่างจากสตริง -
> student = db.distinctFirstWordDemo.distinct("StudentFeature", {"Subject" : "MongoDB"}).map(function(st){ return st.split(" ")[0]; }); [ "John", "Carol" ] > printjson(student);
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
[ "John", "Carol" ]