4.5 排序后按原始序号获取记录

 

获得排序后成员的原始序号。根据员工表,求年龄最大的三名员工的入职顺序。

ID NAME BIRTHDAY HIREDATE
1 Rebecca 1974-11-20 2005-03-11
2 Ashley 1980-07-19 2008-03-16
3 Rachel 1970-12-17 2010-12-01
4 Emily 1985-03-07 2006-08-15
5 Ashley 1975-05-13 2004-07-30

使用 A.psort()函数获得排序后成员在排序前的序号, psort() 函数不会改变原序列顺序。

脚本:

A
1 =connect(“db”)
2 =A1.query@x(“select * from EMPLOYEE order by HIREDATE”)
3 =A2.psort(BIRTHDAY)
4 =A2(A3.to(3).sort())

A1 连接数据库
A2 查询员工表并按入职时间排序
A3 获取员工生日排序后在排序前的序号
A4 在员工表中按生日前三的员工序号选出

运行结果:

ID NAME BIRTHDAY HIREDATE
296 Olivia 1968-11-05 2006-11-01
440 Nicholas 1968-11-24 2008-07-01
444 Alexis 1968-11-12 2010-12-01