групповые записи по ключу - PullRequest
1 голос
/ 19 апреля 2011

У меня есть структура коллекции следующим образом

{"pid": 1, id ": 2," auther ":" xyz "," book ":" pqr "," time ": 1}

{"pid": 1, "id": 3, "auther": "abc", "book": "stu", "time": 2}

{"pid": 1, "id": 2, "auther": "def", "book": "vwx", "time": 3}

{"pid": 1, "id": 3, "auther": "hij", "book": "yza", "time": 4}

{"pid": 2, "id": 3, "auther": "hij", "book": "yza", "time": 4}

{"pid": 2, "id": 2, "auther": "def", "book": "vwx", "time": 3}

Я хочу, чтобы записи, отсортированные по времени в порядке убывания с одинаковыми идентификаторами, были сгруппированы вместе.

означает, что id, содержащий 2, является группой вместе.

В настоящее время запрос может быть таким же, как

db.coll.find ({"pid": 1}). Sort ({"time": -1})

Возможно ли в mongoDB группировать записи по полю

Спасибо.

1 Ответ

1 голос
/ 24 апреля 2011

Я не уверен, что понимаю вашу проблему (что вы имели в виду под «группой»? - пожалуйста, напишите желаемый результат).

Попробуйте это:

.find().sort({pid:1, time: -1})

Сначала - сортировка по pid ASC, чем сортировка по времени DESC

...