A.merge()

阅读(494) 标签: :归并计算, 合并,

描述:

归并计算,将多个序表/排列进行合并

语法:

A.merge(xi,…)

备注:

归并计算A(i)|…A(i)[xi,…]有序,将多个序表/排列按指定字段xi有序合并,xi省略按主键合并,若xi省略且A没有主键则按照r.v()合并A(i)必须同构。

参数:

A

结构相同的多个序表/排列

xi

字段名如果是按照多字段合并,字段间用逗号分隔,例如:x1,x2...

选项:

@u

A(i)的成员按顺序合并到一起组成新的序表/排列,去掉重复的成员

@i

返回A(i)共同的成员组成的序表/排列

@d

A(1)中去掉A(2) &A(n)中的成员后形成的新序表/排列

@o

不假定A(i)[xi,…]有序

@0

null排最后

返回值:

序表/排列

示例:

 

A

 

1

=demo.query("select EID,NAME,GENDER,SALARY from EMPLOYEE where EID<6")

EID有序

2

=demo.query("select EID,NAME,GENDER,SALARY from EMPLOYEE where EID>3")

EID有序

3

=[A1,A2].merge(EID)

A1A2按照EID有序合并

4

=[A1,A2].merge@u(EID)

A1A2按照EID有序合并,并去掉重复成员

5

=[A1,A2].merge@i(EID)

A1A2按照EID有序合并,只保留重复成员

6

=[A1,A2].merge@d(EID)

去除A1A2的成员

7

=[A1,A2].merge@o(SALARY)

8

=demo.query("select * from EMPLOYEE where GENDER = 'M'").keys(EID)

9

=demo.query("select * from EMPLOYEE where GENDER = 'F'").keys(EID)

10

=[A8,A9].merge()

没指定字段,则该序表按照主键顺序合并

11

=demo.query("select * from EMPLOYEE where GENDER = 'M' and EID <15")

 

12

=demo.query("select * from EMPLOYEE where GENDER = 'M' and EID >=15")

 

13

=[A11,A12].merge(EID,GENDER)

按照EIDGENDER两个字段合并

14

=A1.run(EID=null)

 

15

=[A2,A14].merge(EID)

16

=[A2,A14].merge(EID)

相关概念:

CS.mergex()