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

MongoDB:Tìm phần tử tối thiểu trong mảng và xóa nó

Nếu bạn không bị giới hạn trong việc đặt truy vấn trong một bước duy nhất, bạn có thể thử:

bước 1) sử dụng hàm tổng hợp với các toán tử $ unwind và $ group để tìm mục tối thiểu cho mỗi tài liệu

myresults = db.megas.aggregate( [ { "$unwind": "$items" },  
    {"$group": { '_id':'$_id' , 'minitem': {'$min': "$items.item" } } } ] )

bước 2) vòng lặp qua các kết quả và $ kéo phần tử khỏi mảng

for result in myresults['result']:
    db.megas.update( { '_id': result['_id'] }, 
        { '$pull': { 'items': { 'item': result['minitem'] } } } )


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Lập phiên bản đối tượng Java MongoDB

  2. Mongo:cách sắp xếp theo trọng lượng bên ngoài

  3. Cập nhật trường MongoDB bằng cách sử dụng giá trị của trường khác

  4. Cuộc chiến của các cơ sở dữ liệu NoSQL - So sánh các chức năng NoSQL của MongoDB và MSSQL

  5. Cách thay thế tài liệu hiện có khi nhập tệp vào MongoDB