MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

MongoDB:znajdź minimalny element w tablicy i usuń go

Jeśli nie jesteś ograniczony do jednego kroku, możesz spróbować:

krok 1) użyj funkcji agregującej z operatorami $unwind i $group, aby znaleźć minimalną pozycję dla każdego dokumentu

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

krok 2) przeprowadź pętlę przez wyniki i $wyciągnij element z tablicy

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. MongoDB Dopasowuje tablicę z typem $?

  2. MongoDB zagnieżdżone OR/AND Gdzie?

  3. 4 sposoby na usunięcie dokumentu w MongoDB

  4. Kropka MongoDB (.) w nazwie klucza

  5. MongoDB $currentDate