Я пытаюсь получить список людей с наибольшим количеством записей в моей базе данных.mongodb, pymongo, aggregate дает странный вывод (что-то о курсоре)
print db.points.aggregate(
[
{
"$group":
{
"_id": "$created.user",
"count":{"$sum":1}
}
},
{
"$sort":
{"count":-1}
}
]
)
Запись выглядит следующим образом:
{
u'id': u'342902',
u'_id': ObjectId('555af76a029d3b1b0ff9a4be'),
u'type': u'node',
u'pos': [48.9979746, 8.3719741],
u'created': {
u'changeset': u'7105928',
u'version': u'4',
u'uid': u'163673',
u'timestamp': u'2011-01-27T18:05:54Z',
u'user': u'Free_Jan'
}
}
Я знаю, что created.user
существует и иной доступное.
Тем не менее выход я получаю:
<pymongo.command_cursor.CommandCursor object at 0x02ADD6B0>
не Должен ли я получить отсортированный список?
Так же осторожно (хотя вы четко указываете на них как два варианта): после получения списка вы не можете снова перебирать курсор. Вы должны перебирать список. – arun
Спасибо за уведомление, ознакомьтесь с обновлением :) – bagrat
Использование списка (курсор) в настоящее время не работает. Это дает *** Ошибка в аргументе: '(cursor)' – user541905