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

Długi akumulator zamiast Double w funkcji group() MongoDB

Dzieje się tak dlatego, że polecenie grupy faktycznie uruchamia map/reduce, a map/reduce to javascript. W javascript domyślnym typem liczby jest podwójna, z tego powodu zwracana jest podwójna.

Więc prawdopodobnie możesz opakować swoje liczby za pomocą NumberLong(..) jeśli chcesz zobaczyć długi wynik polecenia grupy:

{
    ...
    initial: { count: new NumberLong(0) },
    reduce: "function (o, a) { a.count += new NumberLong(o.count); }"
}

Nie testowałem tego, ale prawie jestem pewien, że powinno działać.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB:wyjątek w initAndListen:20 Próba utworzenia pliku blokady w katalogu tylko do odczytu:/data/db, zakończenie

  2. Importuj dane do nowo utworzonych instancji MongoDB

  3. Jak określić kolejność właściwości w obiekcie javascript dla indeksu MongoDB w node.js?

  4. Automatycznie przedawniaj dokumenty kolekcji MongoDB

  5. MongoError:Sprawdzanie poprawności dokumentu nie powiodło się - Jak wstawić zarówno float, jak i int w to samo pole - które jest oznaczone jako podwójne?