Tài liệu về nhà → Hướng dẫn sử dụng MongoDB → MongoDB Manual Ghi chúĐịnh hướngTrang sau đề cập đến toán tử cập nhật $unset . Đối với giai đoạn tổng hợp $unset , có sẵn trong MongoDB 4.2, xem $unset $unset . For the aggregation stage $unset , available starting in MongoDB 4.2, see
$unset $unset Nhà điều hành $unset xóa một trường cụ thể. Xem xét cú pháp sau:The
$unset operator deletes a particular field. Consider the following syntax: { $unset: { <field1>: "", ... } }
Giá trị được chỉ định trong biểu thức $unset (nghĩa là db.products.insertMany( [ | { "item": "chisel", "sku": "C001", "quantity": 4, "instock": true }, | { "item": "hammer", "sku": "unknown", "quantity": 3, "instock": true }, | { "item": "nails", "sku": "unknown", "quantity": 100, "instock": true } | ] ) |
2) không ảnh hưởng đến hoạt động.$unset expression (i.e. db.products.insertMany( [ | { "item": "chisel", "sku": "C001", "quantity": 4, "instock": true }, | { "item": "hammer", "sku": "unknown", "quantity": 3, "instock": true }, | { "item": "nails", "sku": "unknown", "quantity": 100, "instock": true } | ] ) |
2) does not impact the operation.Để chỉ định db.products.insertMany( [ | { "item": "chisel", "sku": "C001", "quantity": 4, "instock": true }, | { "item": "hammer", "sku": "unknown", "quantity": 3, "instock": true }, | { "item": "nails", "sku": "unknown", "quantity": 100, "instock": true } | ] ) |
3 trong tài liệu nhúng hoặc trong một mảng, hãy sử dụng ký hiệu DOT.Bắt đầu từ MongoDB 5.0, cập nhật các nhà khai thác xử lý các trường tài liệu với tên dựa trên chuỗi theo thứ tự từ vựng. Các trường có tên số được xử lý theo thứ tự số. Xem Cập nhật hành vi của các nhà khai thác để biết chi tiết. Nếu trường không tồn tại, thì $unset không làm gì (tức là không hoạt động).$unset does nothing (i.e. no operation). Khi được sử dụng với db.products.insertMany( [ | { "item": "chisel", "sku": "C001", "quantity": 4, "instock": true }, | { "item": "hammer", "sku": "unknown", "quantity": 3, "instock": true }, | { "item": "nails", "sku": "unknown", "quantity": 100, "instock": true } | ] ) |
5 để khớp với phần tử mảng, $unset thay thế phần tử khớp với db.products.insertMany( [ | { "item": "chisel", "sku": "C001", "quantity": 4, "instock": true }, | { "item": "hammer", "sku": "unknown", "quantity": 3, "instock": true }, | { "item": "nails", "sku": "unknown", "quantity": 100, "instock": true } | ] ) |
7 thay vì loại bỏ phần tử khớp khỏi mảng. Hành vi này giữ ổn định kích thước mảng và vị trí phần tử.$unset replaces the matching element with db.products.insertMany( [ | { "item": "chisel", "sku": "C001", "quantity": 4, "instock": true }, | { "item": "hammer", "sku": "unknown", "quantity": 3, "instock": true }, | { "item": "nails", "sku": "unknown", "quantity": 100, "instock": true } | ] ) |
7 rather than removing the matching element from the array. This behavior keeps consistent the array size and element positions.Bắt đầu từ MongoDB 5.0, db.products.insertMany( [ | { "item": "chisel", "sku": "C001", "quantity": 4, "instock": true }, | { "item": "hammer", "sku": "unknown", "quantity": 3, "instock": true }, | { "item": "nails", "sku": "unknown", "quantity": 100, "instock": true } | ] ) |
8 không còn gây ra lỗi khi bạn sử dụng toán tử cập nhật như $unset với biểu thức toán hạng trống (db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
0). Một bản cập nhật trống dẫn đến không có thay đổi và không có mục nhập oplog được tạo (có nghĩa là hoạt động là không có op).$unset with an empty operand expression ( db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
0 ). An empty update results in no changes and no
oplog entry is created (meaning that the operation is a no-op).Tạo bộ sưu tập db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
1:db.products.insertMany( [ | { "item": "chisel", "sku": "C001", "quantity": 4, "instock": true }, | { "item": "hammer", "sku": "unknown", "quantity": 3, "instock": true }, | { "item": "nails", "sku": "unknown", "quantity": 100, "instock": true } | ] ) |
Cập nhật tài liệu đầu tiên trong bộ sưu tập db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
1 trong đó giá trị của db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
3 là db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
4:db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
5 sử dụng toán tử $unset để:$unset operator to:Xóa trường db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
7Xóa trường db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
8
{ | item: 'chisel', | sku: 'C001', | quantity: 4, | instock: true | }, | { | item: 'hammer', | sku: 'unknown' | }, | { | item: 'nails', | sku: 'unknown', | quantity: 100, | instock: true | } |
MẹoXem thêm:
- Tham khảo> >
- Toán tử> >
- Cập nhật toán tử> >
- Các nhà khai thác cập nhật trường> >
- $unset
Sự định nghĩa¶Định hướng Trang sau đề cập đến toán tử cập nhật db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
9. Đối với giai đoạn tổng hợp db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
9, có sẵn trong MongoDB 4.2, xem db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
9. ________ 6¶Toán tử db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
9 xóa một trường cụ thể. Xem xét cú pháp sau:{ $unset: { <field1>: "", ... } }
Giá trị được chỉ định trong biểu thức db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
9 (nghĩa là { | item: 'chisel', | sku: 'C001', | quantity: 4, | instock: true | }, | { | item: 'hammer', | sku: 'unknown' | }, | { | item: 'nails', | sku: 'unknown', | quantity: 100, | instock: true | } |
5) không ảnh hưởng đến hoạt động.Để chỉ định { | item: 'chisel', | sku: 'C001', | quantity: 4, | instock: true | }, | { | item: 'hammer', | sku: 'unknown' | }, | { | item: 'nails', | sku: 'unknown', | quantity: 100, | instock: true | } |
6 trong tài liệu nhúng hoặc trong một mảng, hãy sử dụng ký hiệu DOT.dot notation.Hành vi¶Nếu trường không tồn tại, thì db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
9 không làm gì (tức là không hoạt động).Khi được sử dụng với { | item: 'chisel', | sku: 'C001', | quantity: 4, | instock: true | }, | { | item: 'hammer', | sku: 'unknown' | }, | { | item: 'nails', | sku: 'unknown', | quantity: 100, | instock: true | } |
8 để khớp với phần tử mảng, db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
9 thay thế phần tử khớp với { $unset: { <field1>: "", ... } }
0 thay vì loại bỏ phần tử khớp khỏi mảng. Hành vi này giữ ổn định kích thước mảng và vị trí phần tử.Thí dụ¶Hoạt động { $unset: { <field1>: "", ... } }
1 sau đây sử dụng toán tử db.products.updateOne( | { sku: "unknown" }, | { $unset: { quantity: "", instock: "" } } | ) |
9 để loại bỏ các trường { $unset: { <field1>: "", ... } }
3 và { $unset: { <field1>: "", ... } }
4 khỏi tài liệu đầu tiên trong bộ sưu tập { $unset: { <field1>: "", ... } }
5 trong đó trường { $unset: { <field1>: "", ... } }
6 có giá trị { $unset: { <field1>: "", ... } }
7.db.products.update(
{ sku: "unknown" },
{ $unset: { quantity: "", instock: "" } }
)
|