CNode

mongoose里对时间排序无法实现

Bbuyaodalian发布于13 年前最后回复13 年前5 回复9412 浏览0 收藏
posts.find().sort({"theDate:-1"}).exec(functions(err,posts){
});

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

查看回复

回复 (5)

J
johnsmith#1·13 年前

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

J
jiangzhuo#2·13 年前

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

所以没有这问题。。。

L
leapon#3·13 年前
引用 johnsmith我觉得是 { 'theDate' : 1 }

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

$ node
> {"theDate:-1"}
'theDate:-1'
B
buyaodalian#4·13 年前
引用 johnsmith我觉得是 { 'theDate' : 1 }

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

J
johnsmith#5·13 年前
引用 johnsmith我觉得是 { 'theDate' : 1 }

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

参与回复
登录后即可参与回复。登录