在数组长度上对数据进行排序

时间:2016-12-01 14:41:23

标签: node.js mongodb mongoose

我想用降序对我的检索进行排序。如何使用$ exists:true命令处理它?我想对数组长度进行排序。

MongoDB的

{ 
    "likelist" : [ 
        "5778173453f8f28a119d6eaa", 
        "5778173453f8f28a119d6eab" 
    ], 
    "unlikelist" : [ 
        "57781e7978ac42eb027d3728" 
    ] 
}

Node.js的

Data.find({
    $and: [ 
        query, 
        { "likelist": { $exists: true } }
    ]
}).limit(req.body.limit).lean().exec(function (err,data) {
    console.log(data)
});

1 个答案:

答案 0 :(得分:0)

也许这样的事情会起作用

Data.find({
    $and: [ 
        query, 
        { "likelist": { $exists: true } }
    ]
}).sort({"_id":1}).limit(req.body.limit).lean().exec(function (err,data) {
    console.log(data)
});

如果你想要别的东西那么请告诉

注意: ObjectId值的顺序与生成时间之间的关系在一秒内不严格

前言信息请阅读:http://www.mongodb.org/display/DOCS/Object+IDs#ObjectIDs-BSONObjectIDSpecification