如果有一个MongoDB集合,包含字段foo
的文档与两个整数时间标记和ISODate
对象,排序查询的结果顺序是什么?
一个对象会出现在另一个对象之前,还是它们会被比较和交错?
我问的原因是因为这在Javascript中是真的(见下文),但我想知道MongoDB的底层实现会发生什么。
> new Date(400) <= 401
true
> new Date(401) <= 400
false
MongoDB对某些比较进行类型检查和转换,而不是对所有比较。我建议在http://docs.mongodb.org/manual/reference/method/cursor.sort/#behaviors上进一步查看文档,了解当类型不同时排序的行为。