Interface JoinableTable

Represents a table which can be joined to another table. Current implementations are Table and TotalsTable.

Hierarchy

Implemented by

Methods

  • Performs an inexact timeseries join, where rows in this table will have columns added from the closest matching row from the right table.

    The `asOfMatchRule` value can be one of:

    • LESS_THAN_EQUAL
    • LESS_THAN
    • GREATER_THAN_EQUAL
    • GREATER_THAN

    Parameters

    • rightTable: JoinableTable

      the table to match to values in this table

    • columnsToMatch: string[]

      the columns that should match, according to the asOfMatchRole

    • Optional columnsToAdd: string[]

      columns from the right table to add to the resulting table, empty/null/absent to add all columns

    • Optional asOfMatchRule: string

      the match rule to use, see above

    Returns Promise<Table>

    a promise that will resolve to the joined table

  • a promise that will be resolved with the newly created table holding the results of the specified cross join operation. The columnsToAdd parameter is optional, not specifying it will result in all columns from the right table being added to the output. The reserveBits optional parameter lets the client control how the key space is distributed between the rows in the two tables, see the Java Table class for details.

    Parameters

    • rightTable: JoinableTable

      the table to match to values in this table

    • columnsToMatch: string[]

      the columns that should match exactly

    • Optional columnsToAdd: string[]

      columns from the right table to add to the resulting table, empty/null/absent to add all columns

    • Optional reserveBits: number

      the number of bits of key-space to initially reserve per group, null/absent will let the server select a value

    Returns Promise<Table>

    a promise that will resolve to the joined table

  • a promise that will be resolved with the newly created table holding the results of the specified exact join operation. The columnsToAdd parameter is optional, not specifying it will result in all columns from the right table being added to the output.

    Parameters

    • rightTable: JoinableTable

      the table to match to values in this table

    • columnsToMatch: string[]

      the columns that should match exactly

    • Optional columnsToAdd: string[]

      columns from the right table to add to the resulting table, empty/null/absent to add all columns

    Returns Promise<Table>

    a promise that will resolve to the joined table

  • Joins this table to the provided table, using one of the specified join types:

    • AJ, ReverseAJ (or RAJ) - inexact timeseries joins, based on the provided matching rule.
    • CROSS_JOIN (or Join) - cross join of all rows that have matching values in both tables.
    • EXACT_JOIN (or ExactJoin - matches values in exactly one row in the right table, with errors if there is not exactly one.
    • NATURAL_JOIN (or Natural - matches values in at most one row in the right table, with nulls if there is no match or errors if there are multiple matches.

    Note that Left join is not supported here, unlike DHE.

    See the Choose a join method document for more guidance on picking a join operation.

    Parameters

    • joinType: string

      The type of join to perform, see the list above.

    • rightTable: JoinableTable

      The table to match to values in this table

    • columnsToMatch: string[]

      Columns that should match

    • Optional columnsToAdd: string[]

      Columns from the right table to add to the result - empty/null/absent to add all columns

    • Optional asOfMatchRule: string

      If joinType is AJ/RAJ/ReverseAJ, the match rule to use

    Returns Promise<Table>

    a promise that will resolve to the joined table

    Deprecated

    Instead, call the specific method for the join type.

  • a promise that will be resolved with the newly created table holding the results of the specified natural join operation. The columnsToAdd parameter is optional, not specifying it will result in all columns from the right table being added to the output.

    Parameters

    • rightTable: JoinableTable

      the table to match to values in this table

    • columnsToMatch: string[]

      the columns that should match exactly

    • Optional columnsToAdd: string[]

      columns from the right table to add to the resulting table, empty/null/absent to add all columns

    Returns Promise<Table>

    a promise that will resolve to the joined table

  • Parameters

    • baseTable: Table
    • Optional doInitialSnapshot: boolean
    • Optional stampColumns: string[]

    Returns Promise<Table>