cs.sortx()

阅读(1374) 标签: 游标, 排序,

描述:

对游标排序。

语法:

cs.sortx(x,…;n)

备注:

根据xcs游标排序,返回成游标。该函数返回的游标不可回转。

参数:

cs

游标。

x

表达式,根据游标cs的成员升序排序。

n

缓冲区行数,运算过程中如果分组数达到n,则把分组结果写入临时文件中;n<1时缓冲区用缺省值的n倍;缺省值由集算器自动计算。

选项:

@0

将值为null的数据排在最后;@0@n不能一起使用。

@n

提高效率x返回值是正整数时才可用该选项,可以直接用序号定义;@0@n不能一起使用。

@g

参数n解释为分段表达式,先根据表达式n分段,分段后再排序。

返回值:

游标

示例:

 

A

 

1

=demo.cursor("select NAME,BIRTHDAY,HIREDATE from Employee")

返回取数游标。

2

=A1.sortx(BIRTHDAY)

对游标中的BIRTHDAY字段排序。

3

=A2.fetch()

A2游标中取数。

4

=demo.cursor("select * from DEPT")

返回取数游标。

5

=A4.sortx@0(FATHER).fetch()

对游标中的FATHER字段排序,并且将值为null的数据排在最后。

6

=A4.sortx@g(DEPTID;FATHER==12).fetch()

FATHER==12的数据为一组,其它数据为另一组,先根据FATHER==12分组后,再组内根据DEPTID排序。

7

=A1.sortx(BIRTHDAY;2)

对游标中的BIRTHDAY排序,运算过程中分组数达到2,分组结果写入临时文件中。

8

=demo.cursor("select * from SCORES")

 

9

=A8.sortx@n(SCORE).fetch()

SCORE字段返回值是正整数,可以使用选项@n提高排序效率。