sort()

语法

query.sort( <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. }