Skip to main content
  • createJoinTable

    public CreateJoinTableResponse createJoinTable(CreateJoinTableRequest request) throws GPUdbException
    Creates a table that is the result of a SQL JOIN.

    For join details and examples see: Joins. For limitations, see Join Limitations and Cautions.

    Parameters:
    request - Request object containing the parameters for the operation.
    Returns:
    Response object containing the results of the operation.
    Throws:
    GPUdbException - if an error occurs during the operation.
  • createJoinTable

    public CreateJoinTableResponse createJoinTable(String joinTableName, List<String> tableNames, List<String> columnNames, List<String> expressions, Map<String,String> options) throws GPUdbException
    Creates a table that is the result of a SQL JOIN.

    For join details and examples see: Joins. For limitations, see Join Limitations and Cautions.

    Parameters:
    joinTableName - Name of the join table to be created, in [schema_name.]table_name format, using standard name resolution rules and meeting table naming criteria.
    tableNames - The list of table names composing the join, each in [schema_name.]table_name format, using standard name resolution rules. Corresponds to a SQL statement FROM clause.
    columnNames - List of member table columns or column expressions to be included in the join. Columns can be prefixed with ‘table_id.column_name’, where ‘table_id’ is the table name or alias. Columns can be aliased via the syntax ‘column_name as alias’. Wild cards ’*’ can be used to include all columns across member tables or ‘table_id.*’ for all of a single table’s columns. Columns and column expressions composing the join must be uniquely named or aliased—therefore, the ’*’ wild card cannot be used if column names aren’t unique across all tables.
    expressions - An optional list of expressions to combine and filter the joined tables. Corresponds to a SQL statement WHERE clause. For details see: expressions. The default value is an empty List.
    options - Optional parameters.
    • CREATE_TEMP_TABLE: If TRUE, a unique temporary table name will be generated in the sys_temp schema and used in place of joinTableName. This is always allowed even if the caller does not have permission to create tables. The generated name is returned in QUALIFIED_JOIN_TABLE_NAME. Supported values:The default value is FALSE.
    • COLLECTION_NAME: [DEPRECATED—please specify the containing schema for the join as part of joinTableName and use createSchema to create the schema if non-existent] Name of a schema for the join. If the schema is non-existent, it will be automatically created. The default value is ”.
    • MAX_QUERY_DIMENSIONS: No longer used.
    • STRATEGY_DEFINITION: The tier strategy for the table and its columns.
    • TTL: Sets the TTL of the join table specified in joinTableName.
    • VIEW_ID: View this projection is part of. The default value is ”.
    • NO_COUNT: Return a count of 0 for the join table for logging and for showTable; optimization needed for large overlapped equi-join stencils. The default value is ‘false’.
    • CHUNK_SIZE: Maximum number of records per joined-chunk for this table. Defaults to the gpudb.conf file chunk size.
    • ENABLE_VIRTUAL_CHUNKING: Collect chunks with accumulated size less than chunk_size into a single chunk. The default value is ‘false’.
    • MAX_VIRTUAL_CHUNK_SIZE: Maximum number of records per virtual-chunk. When set, enables virtual chunking. Defaults to chunk_size if virtual chunking otherwise enabled.
    • MIN_VIRTUAL_CHUNK_SIZE: Minimum number of records per virtual-chunk. When set, enables virtual chunking. Defaults to chunk_size if virtual chunking otherwise enabled.
    • ENABLE_SPARSE_VIRTUAL_CHUNKING: Materialize virtual chunks with only non-deleted values. The default value is ‘false’.
    • ENABLE_EQUI_JOIN_LAZY_RESULT_STORE: Allow using the lazy result store to cache computation of one side of a multichunk equi-join. Reduces computation but also reduces parallelism to the number of chunks on the other side of the equi-join.
    • ENABLE_PREDICATE_EQUI_JOIN_LAZY_RESULT_STORE: Allow using the lazy result store to cache computation of one side of a multichunk predicate-equi-join. Reduces computation but also reduces parallelism to the number of chunks on the other side of the equi-join.
    • ENABLE_PK_EQUI_JOIN: Use equi-join to do primary key joins rather than using primary key index.
    The default value is an empty Map.
    Returns:
    Response object containing the results of the operation.
    Throws:
    GPUdbException - if an error occurs during the operation.