描述:
排列按照指定条件生成多条记录,合并组成新序表返回到原游标中。
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的字段值,#2:Lname表示将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计算后,读取数据内容如下: |
相关概念: