本章节介绍top()函数的用法。
描述:
获取序列前n个最小的成员
语法:
A.top(n,x) 针对序列的每个成员计算表达式x,返回前n个最小x值组成的序列
A.top(n;x,...) 针对序列的每个成员计算表达式x,返回前n个最小的成员组成的序列
A.top(n,y,x) 针对序列的每个成员先计算表达式x,再对计算后的成员进行y计算,最后返回使得y为前n个最小值对应的x的计算结果组成的序列。
备注:
针对序列的每个成员计算表达式,返回前n个最小的成员。n不可省略,x省略解释为~。
参数:
A |
序列 |
n |
整数 |
y |
表达式 |
x |
表达式 |
选项:
@1 |
n为±1时返回单值,n为0时返回null |
@2 |
计算序列A中各个序列成员和列后,获取前n个最小成员 |
@0 |
不忽略null |
返回值:
序列
示例:
|
A |
|
1 |
[a,c,e,g,f,d,b] |
|
2 |
=A1.top(3,~) |
|
3 |
=A1.top(3) |
省略x,同A2 |
4 |
=demo.query("select * from EMPLOYEE") |
|
5 |
=A4.top(10,SALARY) |
获取工资最低的10名员工的工资 |
6 |
=A4.top(10;SALARY) |
获取工资最低的10名员工的信息 |
7 |
[21,3,12,5] |
|
8 |
=A6.top(3,~%10,~+6) |
[11,27,18] |
9 |
=A7.top(-1) |
|
10 |
=A7.top@1(-1) |
|
11 |
=A4.top(10;SALARY,EID) |
获取工资最低且EID值最小的前10名员工的信息 |
12 |
[12,5,-6] |
|
13 |
[36,1,15,9,85] |
|
14 |
=[A12,A13].top@2(2) |
A12与A13和列后,获取前2个最小值 |
15 |
=[1,5,1,7,2,null,4,3] .top@0(3) |
[null,1,1] |
相关概念: