Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MongoDB

รับคำแรกที่แตกต่างจากสตริงด้วย MongoDB หรือไม่


ในการแยกคำแรกที่แตกต่างจากสตริง ให้ใช้ค่าที่ต่างกัน () ให้เราสร้างคอลเลกชันที่มีเอกสารก่อน -

> 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" ]