Làm cách nào để cập nhật giá trị cột trong MongoDB?
Phương thức update() cập nhật các giá trị trong tài liệu hiện có trong bộ sưu tập của MongoDB. Khi bạn cập nhật tài liệu của mình, giá trị của trường _id không thay đổi. Theo mặc định, db. thu thập. phương thức update() cập nhật một tài liệu. Bao gồm tùy chọn đa. true để cập nhật tất cả các tài liệu khớp với truy vấn đã cho. Phương pháp này có thể được sử dụng cho một lần cập nhật tài liệu cũng như nhiều tài liệu Show
cú pháp db.COLLECTION_NAME.update({SELECTION_CRITERIA}, {$set:{UPDATED_DATA}}, { upsert: Thông số
Thông số tùy chọn
ví dụ Trong các ví dụ sau, chúng tôi đang làm việc với
db.student.update({name:"avi"},{$set:{name:"helloword"}}) Ở đây, tham số đầu tiên là tài liệu có giá trị được thay đổi {tên. ”prachi”} và tham số thứ hai được đặt từ khóa có nghĩa là đặt (cập nhật) giá trị của trường tuổi thành 20 Các phương thức update() và save() của MongoDB được sử dụng để cập nhật tài liệu vào một bộ sưu tập. Phương thức update() cập nhật các giá trị trong tài liệu hiện có trong khi phương thức save() thay thế tài liệu hiện có bằng tài liệu được truyền trong phương thức save() Phương thức cập nhật MongoDB()Phương thức update() cập nhật các giá trị trong tài liệu hiện có cú phápCú pháp cơ bản của phương thức update() như sau - >db.COLLECTION_NAME.update(SELECTION_CRITERIA, UPDATED_DATA) Ví dụHãy xem xét bộ sưu tập mycol có dữ liệu sau { "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"} { "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"} { "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"} Ví dụ sau sẽ đặt tiêu đề mới 'Hướng dẫn MongoDB mới' cho các tài liệu có tiêu đề là 'Tổng quan về MongoDB' >db.mycol.update({'title':'MongoDB Overview'},{$set:{'title':'New MongoDB Tutorial'}}) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) >db.mycol.find() { "_id" : ObjectId(5983548781331adf45ec5), "title":"New MongoDB Tutorial"} { "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"} { "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"} > Theo mặc định, MongoDB sẽ chỉ cập nhật một tài liệu duy nhất. Để cập nhật nhiều tài liệu, bạn cần đặt tham số 'multi' thành true >db.mycol.update({'title':'MongoDB Overview'}, {$set:{'title':'New MongoDB Tutorial'}},{multi:true}) Phương thức Lưu () MongoDBPhương thức save() thay thế tài liệu hiện có bằng tài liệu mới được truyền vào phương thức save() cú phápCú pháp cơ bản của phương thức save() trong MongoDB được hiển thị bên dưới - >db.COLLECTION_NAME.save({_id:ObjectId(),NEW_DATA}) Ví dụVí dụ sau sẽ thay thế tài liệu bằng _id '5983548781331adf45ec5' >db.mycol.save( { "_id" : ObjectId("507f191e810c19729de860ea"), "title":"Tutorials Point New Topic", "by":"Tutorials Point" } ) WriteResult({ "nMatched" : 0, "nUpserted" : 1, "nModified" : 0, "_id" : ObjectId("507f191e810c19729de860ea") }) >db.mycol.find() { "_id" : ObjectId("507f191e810c19729de860e6"), "title":"Tutorials Point New Topic", "by":"Tutorials Point"} { "_id" : ObjectId("507f191e810c19729de860e6"), "title":"NoSQL Overview"} { "_id" : ObjectId("507f191e810c19729de860e6"), "title":"Tutorials Point Overview"} > Phương thức findOneAndUpdate() của MongoDBPhương thức findOneAndUpdate() cập nhật các giá trị trong tài liệu hiện có cú phápCú pháp cơ bản của phương thức findOneAndUpdate() như sau - ________số 8Ví dụGiả sử chúng ta đã tạo một bộ sưu tập có tên empDetails và chèn ba tài liệu vào đó như hình bên dưới - > db.empDetails.insertMany( [ { First_Name: "Radhika", Last_Name: "Sharma", Age: "26", e_mail: "[email protected]", phone: "9000012345" }, { First_Name: "Rachel", Last_Name: "Christopher", Age: "27", e_mail: "[email protected]", phone: "9000054321" }, { First_Name: "Fathima", Last_Name: "Sheik", Age: "24", e_mail: "[email protected]", phone: "9000054321" } ] ) Ví dụ sau cập nhật giá trị tuổi và email của tài liệu có tên 'Radhika' db.student.update({name:"avi"},{$set:{name:"helloword"}})0 Phương thức cập nhật MongoDBOne()Phương pháp này cập nhật một tài liệu phù hợp với bộ lọc đã cho cú phápCú pháp cơ bản của phương thức updateOne() như sau - db.student.update({name:"avi"},{$set:{name:"helloword"}})1 Ví dụ{ "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"} { "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"} { "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}0 Phương thức updateMany() của MongoDBPhương thức updateMany() cập nhật tất cả các tài liệu khớp với bộ lọc đã cho cú phápCú pháp cơ bản của phương thức updateMany() như sau - { "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"} { "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"} { "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}1 Ví dụ{ "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"} { "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"} { "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}2 Bạn có thể thấy các giá trị được cập nhật nếu bạn truy xuất nội dung của tài liệu bằng phương thức find như bên dưới - Làm cách nào để tăng giá trị trường trong MongoDB?Toán tử $inc tăng trường theo một giá trị đã chỉ định và có dạng sau. { $inc. {
Làm cách nào để cập nhật thuộc tính cụ thể trong MongoDB?MongoDB cập nhật một trường cụ thể
. Điều này sẽ cập nhật một trường cụ thể của "citiName" theo giá trị "Jakarta Pusat" được xác định bởi toán tử $set. use the $set operator. This will update a specific field of "citiName" by value "Jakarta Pusat" that defined by $set operator.
Có thể cập nhật trường MongoDB bằng giá trị của trường khác không?Bắt đầu từ MongoDB 4. 2 bạn có thể thực hiện Cập nhật bằng Đường ống tổng hợp . Một đường dẫn tổng hợp cho phép cập nhật rõ ràng hơn bao gồm các trường được tính toán và tham chiếu đến các giá trị trường khác trong cùng một tài liệu.
Làm cách nào để thay thế giá trị trong MongoDB?Việc thay thế các giá trị trong MongoDB được thực hiện bằng hai hàm phổ biến trong mongo shell. Đây là các hàm replaceOne() và findOneAndReplace() trong MongoDB . Cả hai chức năng được sử dụng để thay thế các giá trị trong MongoDB và hoạt động ít nhiều giống nhau. |