Các công cụ sửa đổi sau đây có sẵn để cập nhật các hoạt động. Ví dụ – trong db. thu thập. update() and db. thu thập. tìmAndModify() Các bài viết liên quan
Xác định biểu thức toán tử trong tài liệu của biểu mẫu { <operator1>: { <field1>: <value1>, .. }, <operator2>: { <field2>: <value2>, .. }, } Tóm tắt nội dung Người điều hành hiện trường
Nó cập nhật các phần tử của một trường thành ngày hiện tại, dưới dạng Ngày hoặc dấu thời gian. Kiểu dữ liệu mặc định của toán tử này là ngày cú pháp { $currentDate: { <field1>: <typeSpecification1>, .. } } Ví dụ db.books.insertOne( { _id: 1, status: "a", lastModified: purchaseDate("2013-10-02T01:11:18.965Z") } )
Nó làm tăng hồ sơ theo giá trị được chỉ định cú pháp { $inc: { <field1>: <amount1>, <field2>: <amount2>, .. } } Ví dụ { _id: 000438, sku: "MongoDB", quantity: 1, metrics: { orders: 2, ratings: 3.5 } }
Nó thay đổi giá trị của trường thành giá trị được chỉ định nếu giá trị được chỉ định nhỏ hơn giá trị hiện tại của tệp cú pháp { $min: { <field1>: <value1>, .. } } Ví dụ { _id: 0021, highprice: 800, lowprice: 200 } db.books.update( { _id: 0021 }, { $min: { highprice: 500 } } )
Nó thay đổi giá trị của trường thành giá trị được chỉ định nếu giá trị được chỉ định lớn hơn giá trị hiện tại của tệp cú pháp {$ max: {<field1>: <value1>, ...}} Ví dụ ________số 8
Nó đánh giá trị của một trường với một số cú pháp {$ mul: {<field1>: <number1>, ...}} Ví dụ { $currentDate: { <field1>: <typeSpecification1>, .. } }0
Toán tử thay đổi tên của một trường cú pháp { $currentDate: { <field1>: <typeSpecification1>, .. } }1 Ví dụ { $currentDate: { <field1>: <typeSpecification1>, .. } }2
Tập tin toán tử thay đổi giá trị của một trường với giá trị được định sẵn cú pháp { $currentDate: { <field1>: <typeSpecification1>, .. } }3 Ví dụ { $currentDate: { <field1>: <typeSpecification1>, .. } }4
Nếu upsert được đặt thành true, thì nó dẫn đến việc chèn một tài liệu, sau đó toán tử setOnInsert sẽ gán các giá trị được chỉ định cho trường trong tài liệu cú pháp { $currentDate: { <field1>: <typeSpecification1>, .. } }5
Nó loại bỏ một trường được chỉ định cú pháp { $currentDate: { <field1>: <typeSpecification1>, .. } }6 Ví dụ { $currentDate: { <field1>: <typeSpecification1>, .. } }7 Toán tử mảng
Chúng ta có thể cập nhật một phần tử trong một mảng mà không cần chỉ định vị trí rõ ràng của phần tử cú pháp { $currentDate: { <field1>: <typeSpecification1>, .. } }8 Ví dụ { $currentDate: { <field1>: <typeSpecification1>, .. } }9
Toán tử định vị chỉ ra rằng toán tử cập nhật nên thay đổi tất cả các phần tử trong mảng đã chọn cú pháp db.books.insertOne( { _id: 1, status: "a", lastModified: purchaseDate("2013-10-02T01:11:18.965Z") } )0 Ví dụ db.books.insertOne( { _id: 1, status: "a", lastModified: purchaseDate("2013-10-02T01:11:18.965Z") } )1
Nó được gọi là một vị trí toán tử được lọc để xác định các phần tử của mảng cú pháp db.books.insertOne( { _id: 1, status: "a", lastModified: purchaseDate("2013-10-02T01:11:18.965Z") } )2 Ví dụ db.books.insertOne( { _id: 1, status: "a", lastModified: purchaseDate("2013-10-02T01:11:18.965Z") } )3
Nó bổ sung một phần tử vào một mảng ngoại trừ khi phần tử đó đã có mặt, trong trường hợp đó, toán tử này không làm gì với mảng đó cú pháp db.books.insertOne( { _id: 1, status: "a", lastModified: purchaseDate("2013-10-02T01:11:18.965Z") } )4 Ví dụ db.books.insertOne( { _id: 1, status: "a", lastModified: purchaseDate("2013-10-02T01:11:18.965Z") } )5
Chúng ta có thể xóa phần tử đầu tiên hoặc phần cuối cùng của mảng bằng toán tử pop. Chúng ta cần truyền giá trị của pop là -1 để loại bỏ phần tử đầu tiên của một mảng và 1 để loại bỏ phần tử cuối cùng trong một mảng cú pháp db.books.insertOne( { _id: 1, status: "a", lastModified: purchaseDate("2013-10-02T01:11:18.965Z") } )6 Ví dụ db.books.insertOne( { _id: 1, status: "a", lastModified: purchaseDate("2013-10-02T01:11:18.965Z") } )7
Sử dụng thuật toán kéo, chúng ta có thể loại bỏ tất cả các trường hợp của một giá trị trong một mảng phù hợp với điều kiện đã định sẵn cú pháp db.books.insertOne( { _id: 1, status: "a", lastModified: purchaseDate("2013-10-02T01:11:18.965Z") } )8 Ví dụ db.books.insertOne( { _id: 1, status: "a", lastModified: purchaseDate("2013-10-02T01:11:18.965Z") } )9
Nó kết nối một giá trị được chỉ định vào một mảng cú pháp { $inc: { <field1>: <amount1>, <field2>: <amount2>, .. } }0 Ví dụ { $inc: { <field1>: <amount1>, <field2>: <amount2>, .. } }1
Chúng tôi có thể xóa tất cả các phiên bản của thông số kỹ thuật đánh giá từ một mảng hiện có bằng toán tử pullAll. Nó loại bỏ các phần tử phù hợp với giá trị được liệt kê cú pháp { $inc: { <field1>: <amount1>, <field2>: <amount2>, .. } }2 Ví dụ { $inc: { <field1>: <amount1>, <field2>: <amount2>, .. } }3 sửa đổi
Nó được sử dụng với toán tử $ addToSet và toán tử $ Push. Nó được sử dụng với toán tử addToSet để thêm nhiều giá trị vào một mảng nếu giá trị đó không tồn tại trong trường cú pháp { $inc: { <field1>: <amount1>, <field2>: <amount2>, .. } }4 Nó được sử dụng với thuật toán để kết nối nhiều giá trị vào một mảng cú pháp { $inc: { <field1>: <amount1>, <field2>: <amount2>, .. } }5 Ví dụ { $inc: { <field1>: <amount1>, <field2>: <amount2>, .. } }6
Nó chỉ định vị trí nơi toán tử chèn các phần tử bên trong một mảng cú pháp { $inc: { <field1>: <amount1>, <field2>: <amount2>, .. } }7 Ví dụ { $inc: { <field1>: <amount1>, <field2>: <amount2>, .. } }8
Công cụ sửa đổi này được sử dụng để giới hạn số lượng phần tử của mảng trong hoạt động thúc đẩy cú pháp { $inc: { <field1>: <amount1>, <field2>: <amount2>, .. } }9 Ví dụ { _id: 000438, sku: "MongoDB", quantity: 1, metrics: { orders: 2, ratings: 3.5 } }0
Công cụ sửa đổi sắp xếp sắp xếp các giá trị của một mảng trong hoạt động đưa ra cú pháp { _id: 000438, sku: "MongoDB", quantity: 1, metrics: { orders: 2, ratings: 3.5 } }1 Ví dụ { _id: 000438, sku: "MongoDB", quantity: 1, metrics: { orders: 2, ratings: 3.5 } }2 Toán tử Bitwise
Bit update toán tử một trường bằng thao tác bitwise. Nó hỗ trợ các hoạt động bitwise AND, bitwise OR và bitwise XOR |