This entry is part 11 of 24 in the series MongoDB
Xóa document, row trong MongoDB (bằng dòng lệnh, Robo3T).
Cú pháp:
Để document trong MongoDB ta dùng method remove():
db.COLLECTION_NAME.remove(DELLETION_CRITTERIA, justOne)Trong đó:
- DELLETION_CRITTERIA: là điều kiện xóa (các bản ghi nào sẽ bị xóa)
- justOne: Nếu có giá trị bằng 1 hoặc true thì chỉ có nhiều nhất 1 bản ghi bị xóa (trường này tùy chọn, nếu không có thì sẽ xóa tất cả các bản ghi thỏa mãn DELLETION_CRITTERIA)
Ví dụ trong collection player mình có 5 bản ghi như sau:
{'_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'},Bây giờ muốn xóa đối tượng có name = neymar thì câu lệnh sẽ là:
db.player.remove({'name':'neymar'})Kết quả:
Tương tự, muốn xóa các player có name gồm chữ ‘n’ thì câu lệnh sẽ là:
db.player.remove({'name':/n/})Trường hợp tìm thấy nhiều player có name chứa chữ ‘n’ nhưng chỉ muốn xóa 1 bản ghi đầu tiên thì câu lệnh sẽ là:
db.player.remove({'name':/n/},1)Trường hợp điều kiện xóa gồm nhiều điều kiện thì ta dùng $and hoặc $or như khi truy vấn mongodb
Ví dụ: Muốn xóa các document có name bắt đầu bằng ‘m’ và country = ‘france’ thì câu lệnh như sau:
db.player.remove({$and: [{'name':/^m/},{'country':'france'}]})Xóa document bằng Robo3T
Chọn các document cần xóa / click chuột phải và chọn ‘Delete Documents‘
Nếu muốn xóa theo điều kiện, thì gõ lệnh vào ô lệnh và execute như dòng lệnh:
________________________
Okay, Done!
References: //docs.mongodb.com/manual/mongo/