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

Sterownik Java MongoDB:odmienny od sort

MongoDB nie obsługuje sortowania po stronie serwera za pomocą distinct Komenda. To, co dzieje się w konsoli, polega na tym, że distinct('myKey') call zwraca tablicę, a następnie wywołujesz JavaScript sort metoda na tej tablicy, która zwraca posortowaną wersję tablicy. Parametry, które przekazujesz do sort są ignorowane.

Aby zrobić odpowiednik w Javie, powinieneś zrobić:

List myKeys = myCollection.distinct("myKey");
java.util.Collections.sort(myKeys);

Aby uzyskać unikalne klucze za pomocą sortowania po stronie serwera, możesz użyć aggregate . Oto jak można to zrobić w powłoce:

db.mycollection.aggregate([
    { $group: {_id: '$myKey' }},
    { $sort: {_id: 1}}
])

Jednak kiedy to testowałem, proste podejście sortowania po stronie klienta działało znacznie lepiej.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Zaokrąglanie do 2 miejsc po przecinku przy użyciu platformy agregacji MongoDB

  2. Filtruj tablicę poddokumentów, nadal zwracając dane nadrzędne, jeśli są puste

  3. Jak skonfigurować sterownik MongoDB Java MongoOptions do użytku produkcyjnego?

  4. Oblicz średnią wartość dokumentu mongodb

  5. Jak uzyskać liczbę dopasowanych filtrów w mongoDB?