sort()

语法

query.sort( )

类别

SdbQuery

描述

对结果集按指定字段排序。

参数

参数名参数类型默认值描述是否必填
sortJSON默认不对结果集进行排序对结果集按指定字段排序。字段名的值为1或者-1,1代表升序,-1代表降序

Note:

当 find() 方法使用 sel 选项,若该选项没有包含 sort() 指定的排序字段,此时 sort() 方法设置的排序无意义,从而被自动忽略。

返回值

返回结果集的游标。

错误

如果出错则抛异常,并输出错误信息,可以通过getLastErrMsg()获取错误信息或通过getLastError()获取错误码。 关于错误处理可以参考常见错误处理指南

常见错误可参考错误码

示例

  • 返回集合 bar 中 age 字段值大于20的记录(如使用 $gt 查询),设置只返回记录的 name 和 age 字段,并按 age 字段值的升序排序。

    1. > db.foo.bar.find( { age: { $gt: 20 } }, { age: "", name: "" } ).sort( { age: 1 } )
    2. {
    3. "name": "Jack",
    4. "age": 22
    5. }
    6. {
    7. "name": "Tom",
    8. "age": 23
    9. }
    10. {
    11. "name": "John",
    12. "age": 25
    13. }
  • 指定一个无效的排序字段。

    1. > db.foo.bar.find( { age: { $gt: 20 } }, { age: "", name: "" } ).sort( { "sex": 1 } )
    2. {
    3. "name": "Jack",
    4. "age": 22
    5. }
    6. {
    7. "name": "Tom",
    8. "age": 23
    9. }
    10. {
    11. "name": "John",
    12. "age": 25
    13. }