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

Làm cách nào để lưu trữ mảng đã sắp xếp trở lại MongoDB?

Phiên bản 2.4 của MongoDB cung cấp một tùy chọn khác ở đây, đó là giữ trường mảng theo thứ tự được sắp xếp khi bạn cập nhật nó bằng cách sử dụng $sort bổ ngữ.

db.collection.update({_id: document_id}, {
    $push: {
        myarray: {
            $each: [{timestamp: 456, x: 1}, {timestamp: 123, x: 2}, ...],
            $sort: {timestamp: 1}
        }
    }
});

Điều này sẽ dẫn đến các phần tử của myarray trường của tài liệu cập nhật sẽ được lưu trữ được sắp xếp theo timestamp tăng dần .

Nếu bạn chỉ muốn sắp xếp các phần tử hiện có tại chỗ mà không thêm bất kỳ phần tử mới nào, hãy sử dụng $each: [] :

db.collection.update({_id: document_id}, {
    $push: {
        myarray: {
            $each: [],
            $sort: {timestamp: 1}
        }
    }
});


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Làm thế nào để bạn kết xuất nhiều mẫu với một bộ điều khiển tuyến đường sử dụng bộ định tuyến sắt?

  2. Tập hợp Mongo DB với mảng đối tượng

  3. Cách cài đặt MongoDB 4.2 trên hệ thống RedHat / CentOS 7

  4. Cách giám sát máy chủ cơ sở dữ liệu của bạn bằng ClusterControl CLI

  5. Liệt kê và phân phát các tệp từ GridFS với Flask