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

อัปเดตค่าตัวแปรด้วยตัวแปรเองใน MongoDB (ใช้ $set)

ไม่สามารถอัปเดตค่าฟิลด์โดยใช้ตัวมันเองได้โดยตรง ต้องใช้ $set แทน

สร้างคอลเลกชันพร้อมเอกสาร:

> db.demo256.insertOne({"Name":"Chris"}); 
{ "acknowledged" : true, "insertedId" : ObjectId("5e47a3e91627c0c63e7dba8b") } 
> db.demo256.insertOne({"Name":"Bob"}); 
{ "acknowledged" : true, "insertedId" : ObjectId("5e47a3ea1627c0c63e7dba8c") } 
> db.demo256.insertOne({"Name":"David"}); 
{ "acknowledged" : true, "insertedId" : ObjectId("5e47a3eb1627c0c63e7dba8d") }

แสดงเอกสารทั้งหมด:

> db.demo256.find();

ผลลัพธ์:

คำสั่งอัปเดตใช้ $set ต่อสตริง " is a student" เข้ากับฟิลด์ Name (อัปเดตเอกสารแรกที่เจอ):

> db.demo256.update({}, {$set:{"Name":"Name" + " is a student"}}); 
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

แสดงเอกสารอีกครั้ง - สังเกตว่าเอกสารแรกกลายเป็น "Name is a student" (ไม่ใช่ "Chris is a student" เพราะเป็นการต่อสตริงตัวอักษร "Name" ตรงๆ):

> db.demo256.find();

ผลลัพธ์: