描述:
连接同分步的集群游标。
语法:
joinx(csi:Fi,xi,..;…)
备注:
假定xi为升序,将同分布的多个集群游标csi按照关联字段/关联表达式xi和x1以相等的关系连接,产生以Fi,…为字段的集群游标。Fi为引用字段,引用原集群游标序列csi中的记录。xj参数全省略则使用主键连接。有xj参数没设置维时则使用xj的值连接。
支持集群多路游标,集群多路游标时路数必须相同。不管是多少个游标之间关联,都是和cs1中的x1相等判断,因此是一对多的关系。
注意:需要连接的数据在同一台分机上,不能跨机取数。
选项:
@f |
全连接,找不到匹配值时,则与null对应。 |
@1 |
左连接(注意:这里是数字1,不是字母l)。 |
@p |
按位置连接,忽略xj参数。 |
@i |
仅用于过滤cs1,忽略Fi参数,与@f@1互斥。 |
@d |
仅用于过滤cs1,只保留找不到的,忽略Fi参数,与@f@1互斥。 |
参数:
Fi |
结果字段名。 |
csi |
用于连接的集群游标。 |
xi |
连接字段/表达式。 |
返回值:
集群游标
示例:
|
A |
B |
|
1 |
[192.168.0.114:8281,192.168.18.131:8281] |
|
两个集群分机。 |
2 |
=file("salespart.ctx", A1) |
=file("orderpart.ctx":[1], A1) |
组表salespart.ctx 与 orderpart.ctx 分布在两台集群分机中 。
|
3 |
=A2.open() |
=B2.open() |
打开集群组表。 |
4 |
=A3.cursor() |
=B3.cursor() |
|
5 |
=B4.sortx(EID; A4) |
=joinx(A4:s,EID;A5:o,EID) |
在A5中将B4的结果数据排序,将排序的结果按照用户数据来同分布处理,生成与用户数据同分布的游标; B5中用joinx将两个同分布的游标连接。 |