MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Изчислете медианата в рамката за агрегиране на MongoDB

Медианата е малко трудна за изчисляване в общия случай, тъй като включва сортиране на целия набор от данни или използване на рекурсия с дълбочина, която също е пропорционална на размера на набора от данни. Това може би е причината много бази данни да нямат среден оператор (в MySQL също няма такъв).

Най-простият начин за изчисляване на медианата би бил с тези две твърдения (ако приемем, че атрибутът, върху който искаме да изчислим медианата, се нарича a и го искаме над всички документи в колекцията, coll ):

count = db.coll.count();
db.coll.find().sort( {"a":1} ).skip(count / 2 - 1).limit(1);

Това е еквивалентно на това, което хората предлагат за MySQL.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB SSL със самоподписани сертификати в Node.js

  2. Натиснете към два отделни масива в едно извикване за актуализиране в mongodb

  3. Как мога да комбинирам няколко колекции в една колекция, използвайки $lookup mongodb или nodejs mongodb?

  4. Кормило:Достъпът е отказан за разрешаване на свойството от, защото не е собствена собственост на своя родител

  5. Основите за разполагане на набор от реплики на MongoDB и парчета с помощта на Puppet