mongoose查询数据顺序问题
本人新学mongoose,不是很了解mongoose。 现在有个需要:查询最近插入数据库的48条数据,然后按照时间顺序显示。 我的实现是先按照时间逆序查询,然后再把查询结果使用reverse方法反转;或者返回后在前端reverse一次。 具体代码:
Sysmonitor.find().sort('-createdate').limit(48).exec(function (err, sysmonitors) {
res.json(sysmonitors.reverse());
});
这样性能有影响,不知道有没有更好的解决方案?
4 回复
sort(‘field’, -1)
我已经加了排序:sort(’-createdate’) 之前做过尝试,两次sort:先逆序,然后正序,结果是不对的: Sysmonitor.find().sort(’-createdate’).limit(48).sort(‘createdate’).exec()
你把数据查出来再排序不行啊…又不差这一点
我看了一下时间,查询出来再排序,本地环境http响应大概会增加10ms。如果上线后考虑网络因素,这个时间差会存在放大效应。