描述:
序表与排列外键式连接
语法:
A.join(C:.,T:K,x:F,…; …;…)
备注:
用序表/排列A的字段C,…匹配序表/排列T的键找到相应记录,在A上拼接T中的表达式x作为字段F添加到A 上形成新序表。K只能省略或是#,K省略时用T的键,用#时表示用序号。
选项:
@i |
匹配不上的外键删除整条记录,缺省将填成null。当参数x:F省略时,只做针对A的过滤操作。 |
@o(F;…) |
原记录整个作为字段F生成新记录,x可以是~ |
@d |
当参数x:F省略时,删除匹配上外键的整条记录,只做针对A的过滤操作。 |
参数:
A |
序表/排列 |
C |
A的外键,多个时以冒号隔开 |
T |
序表/排列/内表 |
K |
T的键 |
x |
T的字段表达式 |
F |
表达式x的字段名 |
返回值:
序表/排列
示例:
|
A |
|
1 |
=demo.query("select * from EMPLOYEE order by EID" ) |
|
2 |
=demo.query("select * from PERFORMANCE order by EMPLOYEEID").keys(EMPLOYEEID) |
|
3 |
=demo.query("select * from PERFORMANCE order by EMPLOYEEID").cursor().memory().keys(EMPLOYEEID) |
返回内表 |
4 |
=A1.join(EID,A2,BONUS+1:SALARY1) |
外键匹配不上的用null |
5 |
=A1.join(EID,A3,BONUS+1:SALARY1) |
A3为内表,结果同上,外键匹配不上的用null |
6 |
=A1.join@i(EID,A2,BONUS+1:SALARY1) |
匹配不上的外键删除整条记录 |
7 |
=A1.join@i(EID,A2:#1,BONUS+1:SALARY1) |
结果同A4, #1表示第1个字段 |
8 |
=A1.join@o(F1;EID,A2,BONUS+1:SALARY1) |
原记录整个作为字段F1 |
9 |
=A1.join@i(EID,A2) |
省略参数x:F时,只做针对A1的过滤操作 |
10 |
=A1.join@d(EID,A2) |
省略参数x:F时,删除外键可以匹配上的记录,只做针对A1的过滤操作 |