cs.news()

阅读(584) 标签: 字段值, 合并, 原游标,

描述:

排列按照指定条件生成多条记录,合并组成新序表返回到原游标中。

语法:

cs.news(X;xi:Fi,…)

备注:

游标cs附加计算,排列X计算xi后生成多条记录形成新序表返回到原游标cs中。xi作为新字段Fi的值

该函数属于延迟计算函数。

参数:

cs

游标。

X

排列。

xi

表达式,结果为字段值,xi中的~针对X而非cs。用#时表示用序号定位。

Fi

cs的字段名,省略则自动识别。

选项:

@1

左连接,当排列X为空时,则创建一条空记录。

返回值:

游标

示例:

 

A

 

1

=demo.cursor("select EID,NAME,DEPT,GENDER,BIRTHDAY,SALARY from EMPLOYEE")

返回游标。

 

2

=demo.query("select EID,NAME,DEPT,GENDER,BIRTHDAY,SALARY from EMPLOYEE")

返回序表:

3

=A2.group(GENDER;~:gup)

根据GENDER字段对A2序表分组,返回结果如下:

4

=A1.groupx(GENDER;avg(SALARY):avg)

根据GENEDER字段对A1分组,汇总每组的SALARY平均值,返回游标,数据内容如下:

5

=A4.join(GENDER,A3:GENDER,gup)

A4游标附加计算,与A3外键式连接,返回A4游标,A4执行A5计算后数据内容如下:

6

=A4.news(gup;EID,#2:Lname,GENDER,age(~.BIRTHDAY):Age,SALARY+50: Salary,avg:AvgSalary)

A4游标附加计算,计算gup的字段值,#2Lname表示将gup中的第2个字段重命名为Lname,将 EID, Lname,GENDER, Age, Salary, AvgSalary字段组成的序表返回到游标A4中,返回A4游标。

7

=A4.fetch()

A4游标执行A6计算后,读取数据内容如下(数据量较大时建议分批读取):

使用@1选项:

 

A

 

1

=demo.cursor("select  EID,NAME,DEPT,GENDER,BIRTHDAY,SALARY from EMPLOYEE")

返回游标。

 

2

=demo.query("select EID,NAME,DEPT,GENDER,BIRTHDAY,SALARY from EMPLOYEE where GENDER='M' ")

返回序表:

3

=A2.group(GENDER;~:gup)

根据GENDER字段对A2序表分组,返回结果如下:

4

=A1.groupx(GENDER;avg(SALARY):avg)

根据GENEDER字段对A1分组,汇总每组的SALARY平均值,返回游标,数据内容如下:

5

=A4.join(GENDER,A3:GENDER,gup)

A4游标附加计算,与A3外键式连接,返回A4游标,A4执行计算后数据内容如下:

6

=A4.news@1(gup;EID,NAME,GENDER,age(~.BIRTHDAY):Age,Salary,avg:AvgSalary)

A4游标附加计算,计算gup的字段值,将 EID, NAME,GENDER, Age, Salary, AvgSalary字段组成的序表返回到游标A4中,返回A4游标。使用@1选项,左连接,当排列X为空时,则创建一条空记录

7

=A4.fetch()

A4游标执行A6计算后,读取数据内容如下:

 

相关概念:

A.news(X;xi:Fi,)