หากต้องการเปลี่ยนชื่อคอลัมน์ในคอลเล็กชัน คุณสามารถใช้ตัวดำเนินการ $rename ต่อไปนี้เป็นรูปแบบไวยากรณ์
db.yourCollectionName.update({}, {$rename: {'yourOldColumName': 'yourNewColumnName'}}, false, true); ให้เราสร้างคอลเลกชันที่มีเอกสารก่อน:
> db.renamingColumnNameDemo.insertOne({"StudentName":"Larry","Age":23});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9ee2c6d628fa4220163b9a")
}
> db.renamingColumnNameDemo.insertOne({"StudentName":"Sam","Age":26});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9ee2d0d628fa4220163b9b")
}
> db.renamingColumnNameDemo.insertOne({"StudentName":"Robert","Age":27});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9ee2dbd628fa4220163b9c")
} ต่อไปนี้เป็นแบบสอบถามเพื่อแสดงเอกสารทั้งหมดจากคอลเลกชันโดยใช้วิธี find()
> db.renamingColumnNameDemo.find().pretty();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้
{
"_id" : ObjectId("5c9ee2c6d628fa4220163b9a"),
"StudentName" : "Larry",
"Age" : 23
}
{
"_id" : ObjectId("5c9ee2d0d628fa4220163b9b"),
"StudentName" : "Sam",
"Age" : 26
}
{
"_id" : ObjectId("5c9ee2dbd628fa4220163b9c"),
"StudentName" : "Robert",
"Age" : 27
} ต่อไปนี้เป็นแบบสอบถามเพื่อเปลี่ยนชื่อคอลัมน์ในคอลเลกชัน MongoDB
> db.renamingColumnNameDemo.update({}, {$rename: {'Age': 'StudentAge'}}, false, true);
WriteResult({ "nMatched" : 3, "nUpserted" : 0, "nModified" : 3 }) ตอนนี้ตรวจสอบคอลัมน์อายุถูกเปลี่ยนชื่อด้วย “StudentAge”
> db.renamingColumnNameDemo.find().pretty();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้
{
"_id" : ObjectId("5c9ee2c6d628fa4220163b9a"),
"StudentName" : "Larry",
"StudentAge" : 23
}
{
"_id" : ObjectId("5c9ee2d0d628fa4220163b9b"),
"StudentName" : "Sam",
"StudentAge" : 26
}
{
"_id" : ObjectId("5c9ee2dbd628fa4220163b9c"),
"StudentName" : "Robert",
"StudentAge" : 27
}