วิธีแทนที่สตริงใน mongodb (พร้อมตัวอย่าง)
คุณสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อแทนที่สตริงเฉพาะในเขตข้อมูลใน MongoDB:
db.myCollection.updateMany( { fieldName: { $regex : /old/ } }, [{ $set : { fieldName: { $replaceOne : { input: " $fieldName ", find: " old ", replacement: " new " } }} }] )
ตัวอย่างเฉพาะนี้จะแทนที่สตริง “เก่า” ด้วย “ใหม่” ในฟิลด์ชื่อ “fieldName” ภายในคอลเลกชันที่ชื่อ myCollection
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติกับ ทีม เรียกเก็บเงิน โดยมีเอกสารต่อไปนี้:
db.teams.insertOne({team: " Mavs ", conference: " Western ", points: 31}) db.teams.insertOne({team: " Spurs ", conference: " Western ", points: 22}) db.teams.insertOne({team: " Rockets ", conference: " Western ", points: 19}) db.teams.insertOne({team: " Celtics ", conference: " Eastern ", points: 26}) db.teams.insertOne({team: " Cavs ", conference: " Eastern ", points: 33}) db.teams.insertOne({team: " Nets ", conference: " Eastern ", points: 38})
ตัวอย่าง: แทนที่สตริงใน MongoDB
เราสามารถใช้รหัสต่อไปนี้เพื่อแทนที่สตริง “ตะวันตก” ด้วย “ตะวันตก” ในฟิลด์ การประชุม :
db.teams.updateMany( { conference: { $regex : /Western/ } }, [{ $set : { conference: { $replaceOne : { input: " $conference ", find: " Western ", replacement: " West " } }} }] )
นี่คือลักษณะของคอลเลกชันที่อัปเดตในขณะนี้:
{ _id: ObjectId("620139494cb04b772fd7a8fa"), team: ' Mavs ', conference: ' West ', points: 31 } { _id: ObjectId("620139494cb04b772fd7a8fb"), team: ' Spurs ', conference: ' West ', points: 22 } { _id: ObjectId("620139494cb04b772fd7a8fc"), team: ' Rockets ', conference: ' West ', points: 19 } { _id: ObjectId("620139494cb04b772fd7a8fd"), team: ' Celtics ', conference: ' Eastern ', points: 26 } { _id: ObjectId("620139494cb04b772fd7a8fe"), team: ' Cavs ', conference: ' Eastern ', points: 33 } { _id: ObjectId("620139494cb04b772fd7a8ff"), team: ' Nets ', conference: ' Eastern ', points: 38 }
โปรดทราบว่าเอกสารทุกฉบับที่มีสตริง “ตะวันตก” ในช่อง การประชุม จะมี “ตะวันตก” ในช่อง การประชุม
เอกสารใดๆ ที่ไม่มีสตริง “Western” ในช่อง การประชุม จะคงสตริงดั้งเดิมไว้
หมายเหตุ : คุณสามารถค้นหาเอกสารฉบับเต็มสำหรับฟังก์ชัน $replaceOne ได้ที่นี่
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการทั่วไปอื่นๆ ใน MongoDB:
MongoDB: วิธีตรวจสอบว่าฟิลด์มีสตริงหรือไม่
MongoDB: วิธีเพิ่มฟิลด์ใหม่
MongoDB: วิธีลบฟิลด์