本章节介绍calc()函数的使用。
描述:
对指定的记录计算表达式,返回计算结果。
语法:
A.calc(k,x) |
在A的第k个成员上计算x。 |
A.calc(p,x) |
循环对数列p指定成员计算x。 |
备注:
对指定的记录计算表达式,返回计算结果。
参数:
A |
序列/排列。 |
x |
计算表达式,一般为字段名,或者由字段名组成的合法表达式,可使用~引用当前记录。 |
k |
整数,指定第几条记录。 |
p |
数列,指定哪几条记录。 |
返回值:
x计算结果/x计算结果组成的序列
示例:
第k个成员计算x返回:
|
A |
|
1 |
=[1,3,6,2,8] |
|
2 |
=A1.calc(3,~*2) |
对A1序列的第三个成员计算表达式“~*2”,~表示当前成员,因此返回表达式计算结果为12。
|
对数列p指定的成员计算x返回:
|
A |
|
1 |
=[1,3,6,2,8] |
|
2 |
=A1.calc([4,3],~*2) |
计算表达式“~*2”,对A1序列的第4和第3个成员分别计算表达式,返回结果为[4,12]。 |
对序表计算:
|
A |
|
1 |
=demo.query("select * from EMPLOYEE") |
返回序表:
|
2 |
=A1.calc(2,age(HIREDATE)+5) |
对第二条记录根据入职日期计算工龄。 |
3 |
=A1.calc(A1.pselect@a(DEPT=="Administration"), age(HIREDATE)+5) |
对DEPT为" Administration"的所有记录计算age(HIREDATE)+5,结果返回序列。 |