描述:
查找主键为k的成员。
语法:
A.find(k)
从排列/序表A中找到主键为k的成员,有索引表则使用索引表。
A有时间键时,在基本键相同的记录中寻找时间键值不大于k值中最大者对应的记录,k中若未写时间键值则按now()计算,即取最新的。
参数:
| A | 排列/序表。 | 
| k | 主键,主键多个时用序列表示。 | 
选项:
| @b | 二分法查找,要求A必须有序,否则会导致结果不正确,忽略索引表。 | 
| @k | 查找多条记录,当参数k是序列时被认为是键值序列,返回键值对应的A的成员;缺省返回查找第一个k的记录。 | 
返回值:
记录
示例:
| 
 | A | 
 
 | 
| 1 | =demo.query("select * from EMPLOYEE") | 
 | 
| 2 | =A1.keys(NAME,DEPT) | 
 | 
| 3 | =A1.find(["Alexis","Sales"]) | 
 键有多个,因此组成序列 。 | 
| 4 | =demo.query("select * from EMPLOYEE") | 
 该序表按照EID字段有序。 | 
| 5 | =A4.keys(EID) | 
 | 
| 6 | =A4.find@b(3) | 
 使用@b选项,二分法查找,提高运算速度。 | 
| 7 | =A4.find@k(2,15,69,220) | 
 使用@k选项,返回键值对应的成员。 | 
| 8 | =A4.find(2,15,69,220) | 
 不使用@k选项,仅返回第一个键值对应的成员。 | 
| 9 | =demo.query("select EID,NAME,STATE,HIREDATE from EMPLOYEE where GENDER='M'") | 
 | 
| 10 | =A9.keys@t(STATE,HIREDATE) | 设置基础键为STATE,时间键为HIREDATE。 | 
| 11 | =A9.find(["Florida",date("2006-03-12")]) | 
 在STATE为“Florida”的记录中寻找时间键值小于2006-03-12中的最大者对应的记录。 | 
| 12 | =A9.find("Florida") | 
 时间键值按now()计算,取最新的日期。 | 
相关概念:







