total()

阅读(1193) 标签: 汇总,

本章节介绍total()函数的用法。

cs.total()

描述:

针对游标中的记录汇总。

语法:

cs.total(y,…)

备注:

针对游标中的记录汇总,ycs的聚合函数;只有一个y时返回单值。多个y时按y的顺序返回多值。

参数:

cs

游标

y

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

返回值:

   数值/数值序列

示例:

 

A

 

1

=demo.cursor("select * from SCORES where CLASS = 'Class one'")

 

2

=A1.total(sum(SCORE))

返回单值

3

=A1.reset()

回转游标移回头

4

=A1.total(sum(SCORE),count(SUBJECT),max(SCORE))

y的顺序返回

ch.total()

描述:

针对管道中的记录汇总。

语法:

ch.total(y,…)

备注:

针对管道中的记录汇总,ycs的聚合函数;只有一个y时返回单值。多个y时按y的顺序返回多值。

该函数为附加结果集函数

参数:

ch

管道

y

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

返回值:

数值/数值序列

示例:

 

A

 

1

=demo.cursor("select * from SCORES where CLASS = 'Class one'")

 

2

=channel()

创建管道

3

=channel()

 

4

=A1.push(A2,A3)

将游标A1中的数据推送到管道A2A3

此时数据不会立即被推送到管道。

5

=A2.total(sum(SCORE))

对管道A2中的y汇总

6

=A3.total(sum(SCORE),count(SUBJECT),max(SCORE))

对管道A3中的y…汇总

7

=A1.fetch()

从游标A1中取数,此时才会执行管道中的计算,游标中的数据才真正被推送到管道

8

=A2.result()

9

=A3.result()

T.total ()

描述:

针对虚表中的记录汇总

语法:

T.total(y,…)

备注:

针对虚表T中的记录汇总,y是虚表T的聚合函数;只有一个y时返回单值。多个y时按y的顺序返回多值。

参数:

T

虚表

y

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

返回值:

单值或多值

示例:

 

A

 

1

=file("D:/Desktop/DemoData/ctxFile/emp.ctx").open().pseudo()

生成虚表

2

=A1.total(sum(SALARY))

计算SALARY的总和,结果返回单值

3

=A1.total(sum(SALARY),max(SALARY),count(EID))

分别计算SALARY的总和,SALAARY的最大值,EID的总个数,结果返回多值