【问题标题】:How to get sorted results in MongoKit?如何在 MongoKit 中获得排序结果?
【发布时间】:2011-03-14 18:05:18
【问题描述】:

如何执行查询:db.articles.find().sort({created_at: -1}).limit(5);在 MongoKit 驱动程序中?

也许我是盲人,但我在manual 中找不到。我想检索由“created_at”订购的最后 5 件产品。 MongoKit 提供对结果列表(超过 2000 个项目)进行排序和切片。这是不可接受的,我想在数据库级别进行 sort() 和 limit(),而不是 python :(

【问题讨论】:

    标签: python pylons pymongo mongodb


    【解决方案1】:
    db.articles.find().sort({_id: -1}).limit(10);
    

    这应该很有魅力。 “_id”是数据库 ID,基本上就像旧 SQL 时代的主键。

    【讨论】:

    • 好吧,这意味着我很愚蠢。 conn.test.cart.find().sort("_id", 1) - (不带大括号)确实有效。对不起我的疏忽。以及如何对多个字段进行排序? .sort().sort() ?
    • sort({_id:-1, title:-1}) 所以只需在每个参数之间添加一个逗号。这个 {} 括号对象表示法非常通用,json、python、actionscipt、javascript。
    【解决方案2】:

    正确的 MongoKit/PyMongo 等效项是

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

    更多信息请访问PyMongo cursor doc

    【讨论】:

      猜你喜欢
      • 2011-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-17
      • 1970-01-01
      • 2018-08-23
      • 1970-01-01
      相关资源
      最近更新 更多