2012-05-13 36 views
6

Trong vỏ mongo, làm cách nào để xóa tất cả các lần xuất hiện của "id" : "1" giá trị của trường luôn khác nhau. Tôi có sử dụng toán tử $ unset không? Điều đó có xóa giá trị và trường không?Mongo DB Xóa trường và giá trị

Trả lời

16

Bạn đang nói xóa tất cả các lần xuất hiện của trường, phải không? Nếu có, thì phải như sau:

db.collection.update( 
    { id: { $exists: true } }, // criteria 
    { $unset: { id: 1 } },  // modifier 
    false,      // no need to upsert 
    true      // multi-update 
); 
+0

sẽ không xóa trường id: 1? Tôi muốn xóa tất cả các đảm bảo của trường 'id' – Jacinto

+1

@Jacinto Không, khối mã trong câu trả lời của tôi sẽ xóa tất cả các phiên bản * id *. Cú pháp * id: 1 * là sai lạc, nhưng * 1 * thực sự có nghĩa là "true". Xem tại đây: http://www.mongodb.org/display/DOCS/Updating#Updating-%24unset – McGarnagle

Các vấn đề liên quan