join.inner() 函数
join.inner() 在两个表流上执行内连接。
该函数调用 join.tables(),其 method 参数设置为 "inner"。
函数类型签名
(<-left: stream[A], as: (l: A, r: B) => C, on: (l: A, r: B) => bool, right: stream[B]) => stream[C] where A: Record, B: Record, C: Record
有关更多信息,请参见 Function type signatures。
参数
左
左输入流。默认是输送前的数据 (<-).
右侧
(必填) 正确的输入流。
开启
(必需)
一个接受左侧记录和右侧记录 (l 和 r) 的函数,并返回一个布尔值。
函数的主体必须是一个单一的布尔表达式,由一个或多个相等比较组成,这些比较在l的一个属性和r的一个属性之间进行,且通过and操作符连接在一起。
作为
(必需)
一个接受左侧和右侧记录(l 和 r 分别)的函数,并返回一个记录。
返回的记录包含在最终输出中。
示例
执行内连接
import "sampledata"
import "join"
ints = sampledata.int()
strings = sampledata.string()
join.inner(
left: ints,
right: strings,
on: (l, r) => l._time == r._time,
as: (l, r) => ({l with label: r._value}),
)