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

ฉันจะเปลี่ยนชื่อฟิลด์สำหรับเอกสารทั้งหมดใน MongoDB ได้อย่างไร


ไวยากรณ์ดังต่อไปนี้เพื่อเปลี่ยนชื่อเขตข้อมูลสำหรับเอกสารทั้งหมด ที่นี่เราใช้ $renameL

db.yourCollectionName.update({}, {$rename:{"yourOldFieldName":"yourNewFieldName"}},
false, true);

เพื่อให้เข้าใจแนวคิด ให้เราสร้างคอลเลกชันพร้อมกับเอกสาร แบบสอบถามเพื่อสร้างคอลเลกชันที่มีเอกสารมีดังนี้ -

> db.renameFieldDemo.insertOne({"StudentName":"John"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c7ee6c7559dd2396bcfbfbb")
}
> db.renameFieldDemo.insertOne({"StudentName":"Carol"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c7ee6cb559dd2396bcfbfbc")
}
> db.renameFieldDemo.insertOne({"StudentName":"Bob"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c7ee6cf559dd2396bcfbfbd")
}
> db.renameFieldDemo.insertOne({"StudentName":"David"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c7ee6d3559dd2396bcfbfbe")
}
> db.renameFieldDemo.insertOne({"StudentName":"Maxwell"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c7ee6d8559dd2396bcfbfbf")
}

แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้เมธอด find() แบบสอบถามมีดังต่อไปนี้ −

> db.renameFieldDemo.find().pretty();

ต่อไปนี้เป็นผลลัพธ์ -

{ "_id" : ObjectId("5c7ee6c7559dd2396bcfbfbb"), "StudentName" : "John" }
{ "_id" : ObjectId("5c7ee6cb559dd2396bcfbfbc"), "StudentName" : "Carol" }
{ "_id" : ObjectId("5c7ee6cf559dd2396bcfbfbd"), "StudentName" : "Bob" }
{ "_id" : ObjectId("5c7ee6d3559dd2396bcfbfbe"), "StudentName" : "David" }
{ "_id" : ObjectId("5c7ee6d8559dd2396bcfbfbf"), "StudentName" : "Maxwell" }

นี่คือแบบสอบถามเพื่อเปลี่ยนชื่อฟิลด์ "StudentName" เป็น "StudentFirstName" สำหรับเอกสารทั้งหมด -

> db.renameFieldDemo.update({}, {$rename:{"StudentName":"StudentFirstName"}}, false,
true);
WriteResult({ "nMatched" : 5, "nUpserted" : 0, "nModified" : 5 })

ให้เราตรวจสอบเอกสารทั้งหมดจากคอลเลกชัน แบบสอบถามมีดังนี้

> db.renameFieldDemo.find().pretty();

ต่อไปนี้เป็นผลลัพธ์ -

{ "_id" : ObjectId("5c7ee6c7559dd2396bcfbfbb"), "StudentFirstName" : "John" }
{
   "_id" : ObjectId("5c7ee6cb559dd2396bcfbfbc"),
   "StudentFirstName" : "Carol"
}
{ "_id" : ObjectId("5c7ee6cf559dd2396bcfbfbd"), "StudentFirstName" : "Bob" }
{
   "_id" : ObjectId("5c7ee6d3559dd2396bcfbfbe"),
   "StudentFirstName" : "David"
}
{
   "_id" : ObjectId("5c7ee6d8559dd2396bcfbfbf"),
   "StudentFirstName" : "Maxwell"
}

ดูตัวอย่างผลลัพธ์ "StudentName" เปลี่ยนชื่อเป็น "StudentFirstName"