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

คำสั่ง MongoDB นับจำนวนรายการในอาร์เรย์และแสดงในฟิลด์ใหม่


เพื่อนับจำนวนรายการในอาร์เรย์ของเอกสาร ให้ใช้ $size ใน MongoDB มาสร้างคอลเล็กชันกันเถอะ

> db.demo703.insertOne({"ListOfSubject":["MySQL","MongoDB"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5ea6ebaf551299a9f98c93b4") }
> db.demo703.insertOne({"ListOfSubject":["Java"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5ea6ebb5551299a9f98c93b5") }
> db.demo703.insertOne({"ListOfSubject":["C","C++","Python"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5ea6ebbf551299a9f98c93b6") }

แสดงเอกสารทั้งหมดด้วยเมธอด find()

> db.demo703.find();

ผลลัพธ์ที่ได้

{ "_id" : ObjectId("5ea6ebaf551299a9f98c93b4"), "ListOfSubject" : [ "MySQL", "MongoDB" ] }
{ "_id" : ObjectId("5ea6ebb5551299a9f98c93b5"), "ListOfSubject" : [ "Java" ] }
{ "_id" : ObjectId("5ea6ebbf551299a9f98c93b6"), "ListOfSubject" : [ "C", "C++", "Python" ] }

คำสั่งนับจำนวนรายการในอาร์เรย์

>db.demo703.aggregate({$project:{NumberOfItemsInEachArray:{$size:"$ListOfSubject"}}}).pretty();

ผลลัพธ์ที่ได้

{ "_id" : ObjectId("5ea6ebaf551299a9f98c93b4"), "NumberOfItemsInEachArray" : 2 }
{ "_id" : ObjectId("5ea6ebb5551299a9f98c93b5"), "NumberOfItemsInEachArray" : 1 }
{ "_id" : ObjectId("5ea6ebbf551299a9f98c93b6"), "NumberOfItemsInEachArray" : 3 }