Documentation

join.inner() function

join.inner() performs an inner join on two table streams.

The function calls join.tables() with the method parameter set to "inner".

Function type signature
(<-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
  • Copy
  • Fill window

For more information, see Function type signatures.

Parameters

left

Left input stream. Default is piped-forward data (<-).

(Required) Right input stream.

on

(Required) Function that takes a left and right record (l, and r respectively), and returns a boolean.

The body of the function must be a single boolean expression, consisting of one or more equality comparisons between a property of l and a property of r, each chained together by the and operator.

as

(Required) Function that takes a left and a right record (l and r respectively), and returns a record. The returned record is included in the final output.

Examples

Perform an inner join

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}),
)
  • Copy
  • Fill window

View example output


Was this page helpful?

Thank you for your feedback!


The future of Flux

Flux is going into maintenance mode. You can continue using it as you currently are without any changes to your code.

Read more

New in InfluxDB 3.3

Key enhancements in InfluxDB 3.3 and the InfluxDB 3 Explorer 1.1.

See the Blog Post

InfluxDB 3.3 is now available for both Core and Enterprise, which introduces new managed plugins for the Processing Engine. This makes it easier to address common time series tasks with just a plugin. InfluxDB 3 Explorer 1.1 is also available, which includes InfluxDB plugin management and other new features.

For more information, check out: