ใช้กรอบงานรวมร่วมกับตัวดำเนินการ $literal ให้เราสร้างคอลเลกชันที่มีเอกสารก่อน -
> db.replaceValueDemo.insertOne(
{
_id : 100,
"EmployeeName" :"Chris",
"EmployeeOtherDetails": {
"EmployeeDesignation" : "HR",
"EmployeeAge":27
}
}
);
{ "acknowledged" : true, "insertedId" : 100 }
> db.replaceValueDemo.insertOne(
{
_id : 101,
"EmployeeName" :"David",
"EmployeeOtherDetails": {
"EmployeeDesignation" : "Tester",
"EmployeeAge":26
}
}
);
{ "acknowledged" : true, "insertedId" : 101 } ต่อไปนี้เป็นแบบสอบถามเพื่อแสดงเอกสารทั้งหมดจากคอลเลกชันโดยใช้วิธี find() -
> db.replaceValueDemo.find().pretty();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{
"_id" : 100,
"EmployeeName" : "Chris",
"EmployeeOtherDetails" : {
"EmployeeDesignation" : "HR",
"EmployeeAge" : 27
}
}
{
"_id" : 101,
"EmployeeName" : "David",
"EmployeeOtherDetails" : {
"EmployeeDesignation" : "Tester",
"EmployeeAge" : 26
}
} ต่อไปนี้เป็นแบบสอบถามเพื่อแทนที่ค่า -
> db.replaceValueDemo.aggregate([{
"$project": {
"_id": 1,
"EmployeeOtherDetails": {
EmployeeAge: 1,
EmployeeDesignation : { $literal: "Developer" }
}
}
}]); สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : 100, "EmployeeOtherDetails" : { "EmployeeAge" : 27, "EmployeeDesignation" : "Developer" } }
{ "_id" : 101, "EmployeeOtherDetails" : { "EmployeeAge" : 26, "EmployeeDesignation" : "Developer" } }