2010-07-12 4 views
1

Как выполнить запрос типа: db.articles.find(). Sort ({created_at: -1}). Limit (5); в драйвере MongoKit?Как получить отсортированные результаты в MongoKit?

Возможно, я слепой, но я не могу найти его в manual. Я хочу получить 5 последних продуктов, заказанных командой 'created_at'. MongoKit предлагает сортировать список результатов (это больше 2000 позиций) и нарезать его. Это unaccepable, я хочу, чтобы отсортировать() и ограничение() на уровне базы данных, а не питон :(

ответ

4
db.articles.find().sort({_id: -1}).limit(10); 

Это должно работать шарм. «_id» это идентификатор базы данных, которая в основном как первичный ключ старые SQL дней.

+0

Ok, это означает, что я был глуп. conn.test.cart.find(). сортировки ("_ идентификатор ", 1) - (без брекетов) повторно союзник. Извините за мое невнимание. И как сортировать по многим полям? .sort(). sort()? – vas3k

+0

sort ({_ id: -1, title: -1}) Так что просто добавьте запятую между каждым аргументом. Это {} нотация объекта скобки довольно универсальна, json, python, actionscipt, javascript. –

0

Правильное MongoKit/PyMongo эквивалент

connection.articles.find().sort('created_at', pymongo.DESCENDING).limit(5) 

Больше на PyMongo cursor doc.

Смежные вопросы