/create/jointable

URL: https://<aws.fqdn>/<aws.cluster.name>/gpudb-0/create/jointable

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.

Input Parameter Description

Name Type Description
join_table_name string Name of the join table to be created, in [schema_name.]table_name format, using standard name resolution rules and meeting table naming criteria.
table_names array of strings 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.
column_names array of strings 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 array of strings 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 array ( [] ).
options map of string to strings

Optional parameters. The default value is an empty map ( {} ).

Supported Parameters (keys) Parameter Description
create_temp_table

If true, a unique temporary table name will be generated in the sys_temp schema and used in place of input parameter join_table_name. 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. The default value is false. The supported values are:

  • true
  • false
collection_name [DEPRECATED--please specify the containing schema for the join as part of input parameter join_table_name and use /create/schema 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.
optimize_lookups

Use more memory to speed up the joining of tables. The default value is false. The supported values are:

  • true
  • false
strategy_definition The tier strategy for the table and its columns.
ttl Sets the TTL of the join table specified in input parameter join_table_name.
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 /show/table; 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

Output Parameter Description

The GPUdb server embeds the endpoint response inside a standard response structure which contains status information and the actual response to the query. Here is a description of the various fields of the wrapper:

Name Type Description
status String 'OK' or 'ERROR'
message String Empty if success or an error message
data_type String 'create_join_table_response' or 'none' in case of an error
data String Empty string
data_str JSON or String

This embedded JSON represents the result of the /create/jointable endpoint:

Name Type Description
join_table_name string Value of input parameter join_table_name.
count long The number of records in the join table filtered by the given select expression.
info map of string to strings

Additional information. The default value is an empty map ( {} ).

Possible Parameters (keys) Parameter Description
qualified_join_table_name The fully qualified name of the join table (i.e. including the schema)

Empty string in case of an error.