MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Xóa phần tử khỏi mảng trong mongodb

Nếu tôi hiểu đúng về bạn, bạn muốn xóa phần tử đầu tiên và cuối cùng của mảng nếu kích thước của mảng lớn hơn 3. Bạn có thể thực hiện việc này bằng cách sử dụng truy vấn findAndModify. Trong mongo shell, bạn sẽ sử dụng lệnh này:

db.collection.findAndModify({
    query: { $where: "this.time.length > 3" },
    update: { $pop: {time: 1}, $pop: {time: -1} },
    new: true
});

Thao tác này sẽ tìm thấy tài liệu trong bộ sưu tập của bạn khớp với mệnh đề $ where. Trường $ where cho phép bạn chỉ định bất kỳ phương thức javascript hợp lệ nào. Xin lưu ý rằng nó chỉ áp dụng cập nhật cho tài liệu phù hợp đầu tiên.

Bạn cũng có thể muốn xem các tài liệu sau:

  1. http://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-JavascriptExpressionsand%7B%7B%24where%7D%7D để biết thêm về mệnh đề $ where.
  2. http://www.mongodb.org/display/DOCS / Đang cập nhật # Đang cập nhật-% 24pop formore trên $ pop.
  3. http://www.mongodb.org/display/DOCS/findAndModify+ Lệnh để biết thêm thông tin về findAndModify.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. NodeJS / ExpressJS gửi phản hồi lượng lớn dữ liệu trong 1 luồng

  2. Tại sao mongodb được đặt lại sau khi đẩy sang openshift

  3. Làm thế nào để tạo lược đồ Mongoose với Mảng ID đối tượng?

  4. Lỗi khi chèn tài liệu trong bộ sưu tập phân đoạn MongoDB được tạo bằng CLI

  5. làm cách nào để tôi có thể tự động tăng một trường trong mongodb bằng cách sử dụng mã java?