功能:
右表按基准列与左表关联,将指定列拼接到左表上。支持左连接、内连接、全连接、对位连接。执行后记录顺序通常不保持与焦点表一致。
语法:
拼接 [<基准列名>] [关联表 <关联表名>] [<关联列名>] [拼接列 {[<拼接列原名>] [命名 <拼接列新名>]}] [方式] [条件 <条件式>]
参数:基准列名
左表(当前表)中用于关联的一个或多个字段,包括#。
可选,省略参数名。无该参数时必须用条件建立非等值关联。
参数:关联表 <关联表名>
被拼接的右表。
必填,不可省略参数名。
参数:关联列名
右表用于关联的一个或多个字段,包括#。
必填,省略参数名,省略参数值时用主键或基准列同名的列。
参数:拼接列
用于拼接的右表中的列。
必填,复合参数,含有2个子参数,分别是拼接列原名、命名 <拼接列新名>,多组表示拼接多个列。
示例:
STUDENT表数据如下:
|
ID |
NAME |
GENDER |
AGE |
|
1 |
Emily |
F |
17 |
|
2 |
Elizabeth |
F |
16 |
|
3 |
Sean |
M |
17 |
|
4 |
Lauren |
F |
15 |
SCORES表数据如下:
|
CLASS |
STUDENTID |
SUBJECT |
SCORE |
|
Class one |
3 |
English |
75 |
|
Class one |
3 |
Math |
86 |
|
Class one |
3 |
PE |
67 |
|
Class one |
4 |
English |
96 |
|
Class one |
4 |
Math |
63 |
|
Class one |
4 |
PE |
81 |
|
Class one |
5 |
English |
72 |
|
Class one |
5 |
Math |
60 |
拼接 ID; 关联表 SCORES;STUDENTID 拼接列 CLASS 命名 Class_Name,SUBJECT,SCORE //焦点表为STUDENTS表,将STUDENTS表通过字段ID与SCORES表的STUDENTID字段关联,拼接上SCORES表的CLASS,SUBJECT,SCORE列,并将CLASS列命名为Class_Name,结果如下:
|
ID |
NAME |
GENDER |
AGE |
Class_Name |
SUBJECT |
SCORE |
|
1 |
Emily |
F |
17 |
|
|
|
|
2 |
Elizabeth |
F |
16 |
|
|
|
|
3 |
Sean |
M |
17 |
Class one |
English |
75 |
|
3 |
Sean |
M |
17 |
Class one |
PE |
67 |
|
3 |
Sean |
M |
17 |
Class one |
Math |
86 |
|
4 |
Lauren |
F |
15 |
Class one |
English |
96 |
|
4 |
Lauren |
F |
15 |
Class one |
PE |
81 |
|
4 |
Lauren |
F |
15 |
Class one |
Math |
63 |
参数:方式
关联时的连接方式。
必填,枚举类型,枚举值:左连接、内连接、全连接、对位。参数缺省为左连接。其中对位表示按位置或行号#进行关联,即行号相同的记录关联在一起。对位时,基准列名和关联列名都是#,可以省略。
示例:
EMPLOYEE表数据如下:
|
EID |
NAME |
GENDER |
DEPT |
SALARY |
|
1 |
Rebecca |
F |
R&D |
7000 |
|
2 |
Ashley |
F |
Finance |
11000 |
|
3 |
Rachel |
F |
Sales |
9000 |
|
4 |
Emily |
F |
HR |
7000 |
|
5 |
Ashley |
F |
R&D |
16000 |
|
6 |
Matthew |
M |
Sales |
11000 |
|
7 |
Alexis |
F |
Sales |
9000 |
|
8 |
Megan |
F |
Marketing |
11000 |
|
9 |
Victoria |
F |
HR |
3000 |
|
10 |
Ryan |
M |
R&D |
13000 |
FAMILY表数据如下:
|
EID |
NAME |
RELATION |
GENDER |
AGE |
|
1 |
Jacky |
child |
Male |
15 |
|
1 |
Linda |
child |
Female |
17 |
|
1 |
Vincent |
spouse |
Male |
52 |
|
2 |
Anna |
spouse |
Female |
41 |
|
3 |
Andy |
child |
Male |
10 |
|
3 |
Carmen |
child |
Female |
14 |
|
3 |
Denny |
spouse |
Male |
47 |
|
4 |
Chelsea |
spouse |
Female |
40 |
|
5 |
Cherry |
spouse |
Female |
43 |
|
6 |
Christine |
spouse |
Female |
42 |
|
7 |
Daisy |
spouse |
Female |
49 |
|
7 |
Petter |
child |
Female |
12 |
|
11 |
Ailsa |
child |
Female |
5 |
|
11 |
Tom |
spouse |
Male |
40 |
|
11 |
Tommy |
child |
Male |
7 |
拼接 EID; 关联表 FAMILY 拼接列 RELATION GENDER NAME AGE 全连接 //焦点表为EMPLOYEE表,使用全连接方式关联,关联列和基准列同名所以省略,结果如下:
|
EID |
NAME |
GENDER |
DEPT |
SALARY |
RELATION |
GENDER |
NAME |
AGE |
|
1 |
Rebecca |
F |
R&D |
7000 |
child |
Male |
Jacky |
15 |
|
1 |
Rebecca |
F |
R&D |
7000 |
spouse |
Male |
Vincent |
52 |
|
1 |
Rebecca |
F |
R&D |
7000 |
child |
Female |
Linda |
17 |
|
2 |
Ashley |
F |
Finance |
11000 |
spouse |
Female |
Anna |
41 |
|
3 |
Rachel |
F |
Sales |
9000 |
child |
Male |
Andy |
10 |
|
3 |
Rachel |
F |
Sales |
9000 |
spouse |
Male |
Denny |
47 |
|
3 |
Rachel |
F |
Sales |
9000 |
child |
Female |
Carmen |
14 |
|
4 |
Emily |
F |
HR |
7000 |
spouse |
Female |
Chelsea |
40 |
|
5 |
Ashley |
F |
R&D |
16000 |
spouse |
Female |
Cherry |
43 |
|
6 |
Matthew |
M |
Sales |
11000 |
spouse |
Female |
Christine |
42 |
|
7 |
Alexis |
F |
Sales |
9000 |
spouse |
Female |
Daisy |
49 |
|
7 |
Alexis |
F |
Sales |
9000 |
child |
Female |
Petter |
12 |
|
8 |
Megan |
F |
Marketing |
11000 |
|
|
|
|
|
9 |
Victoria |
F |
HR |
3000 |
|
|
|
|
|
10 |
Ryan |
M |
R&D |
13000 |
|
|
|
|
|
|
|
|
|
|
child |
Female |
Ailsa |
5 |
|
|
|
|
|
|
child |
Male |
Tommy |
7 |
|
|
|
|
|
|
spouse |
Male |
Tom |
40 |
DEPARTMENT表数据如下:
|
MANAGER |
DEPT |
|
1 |
Administration |
|
2 |
R&D |
|
3 |
Sales |
|
4 |
Finance |
|
5 |
HR |
|
6 |
Marketing |
|
7 |
Production |
|
8 |
Technology |
拼接 关联表 EMPLOYEE; 拼接列 NAME,SALARY 对位 //焦点表为DEPARTMENT表,使用对位方式关联,将DEPARTMENT表与EMPLOYEE表行号相同的记录关联在一起,结果如下:
|
MANAGER |
DEPT |
NAME |
SALARY |
|
1 |
Administration |
Rebecca |
7000 |
|
2 |
R&D |
Ashley |
11000 |
|
3 |
Sales |
Rachel |
9000 |
|
4 |
Finance |
Emily |
7000 |
|
5 |
HR |
Ashley |
16000 |
|
6 |
Marketing |
Matthew |
11000 |
|
7 |
Production |
Alexis |
9000 |
|
8 |
Technology |
Megan |
11000 |
参数:条件 <条件式>
对关联后的结果进行过滤,通常含有基准表(左表)的字段和右表的字段,其中基准表的字段必须用@后缀,非基准表的字段没有@后缀。仅支持内连接和左连接
可选,不可省略参数名。无该参数时,必须有参数基准列名,有该参数时,可以没有参数基准列名。
示例:
拼接 ID; 关联表 SCORES;STUDENTID 拼接列 CLASS ,SUBJECT,SCORE 条件 (ID@<5 且 (["English","PE"] 包含 SUBJECT) ) //焦点表为STUDENTS表,将STUDENTS表通过字段ID与SCORES表的STUDENTID字段关联,拼接上SCORES表的CLASS,SUBJECT,SCORE列,过滤条件是STUDENTS的ID字段值小于5,且SUBJECT值为English或PE。结果如下:
|
ID |
NAME |
GENDER |
AGE |
CLASS |
SUBJECT |
SCORE |
|
3 |
Sean |
M |
17 |
Class one |
English |
75 |
|
3 |
Sean |
M |
17 |
Class one |
PE |
67 |
|
4 |
Lauren |
F |
15 |
Class one |
English |
96 |
|
4 |
Lauren |
F |
15 |
Class one |
PE |
81 |