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

mangusta/mongodb sortowanie niestandardowe

Możesz użyć db.eval jeśli jesteś zdecydowany to zrobić po stronie bazy danych.

Odpowiedź wyodrębniona z innego pytania:

Nie sądzę, że jest to możliwe bezpośrednio; sortdocumentation z pewnością nie wspomina o żadnym sposobie dostarczenia niestandardowej funkcji porównania.

Prawdopodobnie najlepiej zrobisz to w kliencie, ale jeśli naprawdę chcesz to zrobić na serwerze, możesz użyć db.eval() zorganizować uruchomienie sortowania na serwerze (jeśli Twój klient to obsługuje).

Sortowanie po stronie serwera:

db.eval(function() { 
  return db.scratch.find().toArray().sort(function(doc1, doc2) { 
    return doc1.a - doc2.a 
  }) 
});

W porównaniu z równoważnym sortowaniem po stronie klienta:

db.scratch.find().toArray().sort(function(doc1, doc2) { 
  return doc1.a - doc2.b 
});


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Obsługa rozłączeń/ponownych połączeń MongoDB z węzła

  2. jak mogę połączyć się ze zdalnym serwerem mongo z terminala Mac OS?

  3. Dlaczego MongoDB zajmuje tyle miejsca?

  4. Przegląd MongoDB i równoważenia obciążenia

  5. Jak wyświetlić listę wszystkich kolekcji w powłoce MongoDB?