cs.groups()

阅读(324)

描述:

针对集群游标中的记录分组。

语法:

cs.groups(x:F,…;y:G…;n)

备注:

针对集群游标中的记录分组。按分组字段排序,依次向结果集聚合。

按照x分组后,形成以F,...G,…为字段的新序表,按分组字段x排序,F字段值为每一组第一条记录的x字段值,G字段值为对每一组进行y操作后的结果。ycs的聚合函数。

参数:

cs

集群游标记录

x

分组表达式,x:F省略表示针对全集聚合,此时不可省略。

F

结果序表的字段名

y

聚合函数,仅支持sum/count/max/min/top/avg/iterate,使用iterate(x,a;Gi,…)时不能有参数Gi

G

结果序表中的汇总字段名

n

最大分组数,超过n时停止执行,用于分组数非常大时,防止内存溢出。并且最后的分组数不是确切数n,可能会比n大一些。

返回值:

分组后的序表

示例:

 

A

 

1

=file@n("D:/emp1.ctx","192.168.0.111:8281")

emp1.ctx数据文件内容如下:

2

=A1.create()

打开集群组表

3

=A2.cursor()

返回集群游标

4

=A3.groups(Dept:dept;count(Name):count)

根据DEPT进行分组,然后进行聚合计算