- MongoDB là gì? Các khái niệm trong MongoDB
- Hướng dẫn cài đặt, cấu hình MongoDB trên Windows 10
- Cài đặt và sử dụng Robo 3T (RoboMongo) trên Windows
- Hướng dẫn cài đặt MongoDB trên Linux (Ubuntu 16.04)
- Hướng dẫn MongoDB – Tạo database trong MongoDB
- Hướng dẫn MongoDB – Xóa, DROP database trong MongoDB
- Tạo bảng, collections trong MongoDB (Tạo bằng dòng lệnh, Robo3t)
- Xóa bảng, collections trong MongoDB (Xóa bằng lệnh/ Robo3T)
- Insert document, bản ghi trong MongoDB (Insert bằng lệnh, Robo3T)
- Truy vấn dữ liệu/document, find(), Select, Where trong MongoDB
- Xóa document, row trong MongoDB (bằng dòng lệnh, Robo3T)
- Update document, dữ liệu trong MongoDB
- Projection trong MongoDB (SELECT field/column trong MongoDB)
- Sắp xếp trong MongoDB(orderBy, sorting() trong MongoDB)
- Ưu nhược điểm của MongoDB, khi nào nên dùng MongoDB
- Xóa cột, field, trường của collections trong MongoDB ($unset)
- Kiểm tra null, check tồn tại trong MongoDB với $exists
- Đổi tên field trong MongoDB với $rename
- Tạo user/roles, phân quyền người dùng trên MongoDB
- Các loại roles, vai trò, quyền trong MongoDB.
- Đăng nhập mongodb với username và password (database mongo)
- Tạo Replica Set trong MongoDB, Ví dụ Replica Set MongoDB
- Replication, Replica Set trong MongoDB là gì?
- Phân trang trong MongoDB (skip(), limit() paging trong MongoDB)
Xóa cột, field, trường của collections trong MongoDB ($unset).
(Trong mongodb data lưu dưới dạng JSON nên sẽ không có khái niệm cột, tuy nhiên khi hiển thị ta sẽ thấy mỗi field tương đương với 1 cột)
Xóa field trong collections
Để xóa một field trong collections ta sử dụng lệnh update()
kết hợp với $unset
Cú pháp:
db.collection_name.update( <SELECTION_CRITERIA>, { $unset: { <field1>: "", ... } }, multi: <boolean> )
Trong đó:
collection_name
là tên của collectionSELECTION_CRITERIA
: là mệnh đề where trong MongoDB dùng để chọn ra những document được xóa field$unset
: danh sách các field sẽ bị xóamulti: (boolean)
: mặc định là false. Nếu là true thì mới cho phép xóa field ở nhiều documents
Ví dụ:
Mình insert 5 bản ghi sau vào document player
db.player.insert([ {'_id':'1', 'name':'neymar', 'country':'brazil', 'age':'25'}, {'_id':'2', 'name':'hazard', 'country':'belgium', 'age':'25'}, {'_id':'3', 'name':'mbappe', 'country':'france', 'age':'18'}, {'_id':'4', 'name':'modric', 'country':'croatia', 'age':'30'}, {'_id':'5', 'name':'ronaldo', 'country':'portugal', 'age':'33'}])
Để xóa fields age
ta dùng lệnh sau:
db.player.updateMany({},{$unset:{age:""}}) hoặc: db.player.update({},{$unset:{age:""}},{multi: true})
* Lưu ý: Các bạn nhớ là dùng lệnh updateMany()
hoặc lệnh update()
với tùy chọn {multi: true}
nếu không nó sẽ chỉ xóa field age
của document đầu tiên mà thôi
Kết quả: trường age
bị xóa khỏi tất cả các document trong collections player
Okay, Done!
References:
https://docs.mongodb.com/manual/reference/operator/update/unset/