หากต้องการเพิ่มฟิลด์ใหม่ให้กับทุกเอกสารในคอลเลกชัน MongoDB คุณสามารถใช้ตัวดำเนินการ $set ไวยากรณ์มีดังนี้:
db.yourCollectionName.update({}, { $set: {"yourFieldName": yourValue} }, false, true);
เพื่อให้เข้าใจไวยากรณ์ข้างต้น ให้เราสร้างคอลเลกชันพร้อมเอกสารบางส่วน แบบสอบถามเพื่อสร้างคอลเลกชันที่มีเอกสารมีดังนี้:
>db.addNewFieldToEveryDocument.insertOne({"StudentName":"John","StudentAddress":"US "}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906ae") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"David","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906af") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Carol","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b0") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Bob","StudentAddress":"US" }); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b1") }
แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้เมธอด find() แบบสอบถามมีดังนี้:
> db.addNewFieldToEveryDocument.find().pretty();
ต่อไปนี้เป็นผลลัพธ์:
{ "_id" : ObjectId("5c6efc0b6fd07954a48906ae"), "StudentName" : "John", "StudentAddress" : "US" } { "_id" : ObjectId("5c6efc0b6fd07954a48906af"), "StudentName" : "David", "StudentAddress" : "UK" } { "_id" : ObjectId("5c6efc0b6fd07954a48906b0"), "StudentName" : "Carol", "StudentAddress" : "UK" } { "_id" : ObjectId("5c6efc0b6fd07954a48906b1"), "StudentName" : "Bob", "StudentAddress" : "US" }
ต่อไปนี้เป็นแบบสอบถามเพื่อเพิ่มฟิลด์ใหม่ให้กับทุกเอกสาร:
> db.addNewFieldToEveryDocument.update({}, { $set: {"StudentAge": 24} }, false, true); WriteResult({ "nMatched" : 4, "nUpserted" : 0, "nModified" : 4 })
ด้านบน เราได้เพิ่มฟิลด์ใหม่ “StudentAge”:24 ในทุกเอกสาร ให้เราตรวจสอบช่อง “StudentAge”:24 ว่าเพิ่มทุกเอกสารสำเร็จหรือไม่ แบบสอบถามมีดังนี้:
> db.addNewFieldToEveryDocument.find().pretty();
ต่อไปนี้เป็นผลลัพธ์:
{ "_id" : ObjectId("5c6efc0b6fd07954a48906ae"), "StudentName" : "John", "StudentAddress" : "US", "StudentAge" : 24 } { "_id" : ObjectId("5c6efc0b6fd07954a48906af"), "StudentName" : "David", "StudentAddress" : "UK", "StudentAge" : 24 } { "_id" : ObjectId("5c6efc0b6fd07954a48906b0"), "StudentName" : "Carol", "StudentAddress" : "UK", "StudentAge" : 24 } { "_id" : ObjectId("5c6efc0b6fd07954a48906b1"), "StudentName" : "Bob", "StudentAddress" : "US", "StudentAge" : 24 }