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

mongodb агрегиращо сортиране

Почти го получи...

db.test.aggregate(
  {$group: {_id: '$postcode', students: {$sum: 1}}}, 
  {$sort: {_id: -1}}
);

дава (добавих някои тестови данни, съответстващи на вашата извадка):

{
  "result" : [
    {
        "_id" : 2003,
        "students" : 3
    },
    {
        "_id" : 2002,
        "students" : 1
    },
    {
        "_id" : 2001,
        "students" : 2
    }
  ],
  "ok" : 1
}

Имахте външен {} около всичко, което предизвикваше известно объркване. Групирането и сортирането не работеха като отделни операции в конвейера.

Всъщност не ви трябваше проектът за този случай.

Актуализиране Вероятно искате да сортирате по "ученици", така че да получите първо най-големите пощенски кодове (по население):

db.test.aggregate(
  {$group: {_id: '$postcode', students: {$sum: 1}}}, 
  {$sort: {students: -1}}
);


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Проста страница за вход в nodejs, използвайки експрес и паспорт с mongodb

  2. Какво е курсор в MongoDB?

  3. Автоматизирана проверка на конфигурацията на базата данни

  4. mongo.so:> недефиниран символ:php_json_encode в Unknown на ред 0. След инсталиране mongo драйвер за php

  5. MongoDB Намерете производителност:единичен съставен индекс срещу два индекса с единично поле