A.join()

阅读(837) 标签: 序表, 排列, 外键式连接,

描述:

序表与排列外键式连接

语法:

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的过滤操作