两张表的交叉连接
Cross join of two tables
我有两个表 x
和 y
。我想加入 b
列,以便在输出中得到 z
。
x:([a:1 2 1 3]; b:`a`a`b`b)
q) a | b
-----
1 | a
2 | a
1 | b
3 | b
y:([b:`a`a`a`b]; c:7 8 9 10)
q) b | c
------
a | 7
a | 8
a | 9
b | 10
期望的输出:
q) a | b | c
-----------
1 | a | 7
1 | a | 8
1 | a | 9
2 | a | 7
2 | a | 8
2 | a | 9
1 | b | 10
3 | b | 10
这是某种交叉连接吗?
一个equi join (ej)会产生你想要的结果:
q)ej[`b;x;y]
我有两个表 x
和 y
。我想加入 b
列,以便在输出中得到 z
。
x:([a:1 2 1 3]; b:`a`a`b`b)
q) a | b
-----
1 | a
2 | a
1 | b
3 | b
y:([b:`a`a`a`b]; c:7 8 9 10)
q) b | c
------
a | 7
a | 8
a | 9
b | 10
期望的输出:
q) a | b | c
-----------
1 | a | 7
1 | a | 8
1 | a | 9
2 | a | 7
2 | a | 8
2 | a | 9
1 | b | 10
3 | b | 10
这是某种交叉连接吗?
一个equi join (ej)会产生你想要的结果:
q)ej[`b;x;y]