4.14 行式数据排名 - 按多字段组合
将成绩表按数学、英语、体育三个字段的顺序组合计算排名:
Class | Name | Maths | English | PE |
---|---|---|---|---|
1 | Tom | 85 | 97 | 74 |
2 | John | 92 | 80 | 95 |
2 | Joan | 86 | 67 | 85 |
1 | Rocky | 95 | 95 | 75 |
2 | Ham | 92 | 75 | 53 |
1 | Kate | 83 | 99 | 50 |
1 | Rose | 95 | 62 | 81 |
2 | Nomy | 78 | 91 | 70 |
1 | Neil | 91 | 83 | 97 |
2 | Jack | 84 | 75 | 73 |
1 | Joe | 98 | 71 | 60 |
脚本:
A | |
---|---|
1 | =T(“score.xlsx”) |
2 | =A1.([Maths,English,PE]) |
3 | =A1.derive(A2.rank@z([Maths,English,PE]):Rank) |
A2 获得数学、英语、体育三个字段组成的序列的序列
A3 向 A1 中添加排名字段,用 A2 计算当前行的数学、英语、体育排名
运行结果:
Class | Name | Maths | English | PE | Rank |
---|---|---|---|---|---|
1 | Tom | 85 | 97 | 74 | 8 |
2 | John | 92 | 80 | 95 | 4 |
2 | Joan | 86 | 67 | 85 | 7 |
1 | Rocky | 95 | 95 | 75 | 2 |
2 | Ham | 92 | 75 | 53 | 5 |
1 | Kate | 83 | 99 | 50 | 10 |
1 | Rose | 95 | 62 | 81 | 3 |
2 | Nomy | 78 | 91 | 70 | 11 |
1 | Neil | 91 | 83 | 97 | 6 |
2 | Jack | 84 | 75 | 73 | 9 |
1 | Joe | 98 | 71 | 60 | 1 |