描述:
递归查询在外键中引用到指定记录的数据。
P.nodes(F,r,n)
备注:
在排列P中,递归查找所有在外键F中引用到记录r的记录,返回r的子节点记录。
记录r可以看作是根节点,其下层记录可以统称为r的子节点,当其下层不再有记录,则可称为叶子节点,反之下层仍有记录则称为枝干节点。
若r记录在排列P中不存在,结果返回NULL。参数n表示最大递归深度,缺省为1000。
参数:
P |
排列。 |
F |
字段名称。 |
r |
记录。 |
n |
数值。 |
选项:
@d |
返回叶子层的节点。 |
@p |
返回子节点及子节点到根节点的引用层次。 |
返回值:
序列
示例:
|
A |
|
1 |
|
|
2 |
>A1.switch(mgrid,A1:empid) |
|
3 |
=A1.nodes(mgrid,A1.select@1(name=="Diana"),5) |
根据mgrid外键引用,查询Diana的所有下属的记录,包括下属的下属的记录。 |
4 |
=A1.nodes@d(mgrid,A1.select@1(name=="Diana"),5) |
查询Diana的所有不是领导的下属的记录。 |
5 |
=A1.nodes@p(mgrid,A1.select@1(name=="Diana"),5) |
列出Diana的下属的关系。由此看出Diana是empid=7的领导,而empid=7为empid=14的上司。 |