mongoose里对时间排序无法实现
 发布于 12 年前  作者 buyaodalian  9258 次预览  最后一次回复是 12 年前  来自  
posts.find().sort({"theDate:-1"}).exec(functions(err,posts){
});

无论是mongoose还是mongo shell都无法实现。 我要对时间排倒序,这是官方doc写的,但是无法实现。 StackOverFlow上的部分解决方法现已不可用。 提示:sort方法只能传String或者Object。

5 回复
johnsmith

我觉得是 { 'theDate' : -1 }

jiangzhuo

我们所有的时间全部用的时间戳 都是数字

所以没有这问题。。。

leapon

同意:{“theDate:-1”} 就是个字符串

$ node
> {"theDate:-1"}
'theDate:-1'
buyaodalian

@leapon @JohnSmith @jiangzhuo 感谢你们参与回答,你们说的这个还是不能用,不过最后的解决办法是对_id排序,因为_id的前4个字节是时间戳,所以对_id排序就是对时间排序。

johnsmith

@buyaodalian 我之前排过,是对的,你可以试一下用 ‘-theDate’