A set of parameters for GPUdb::createJoinTable. More…
#include <gpudb/protocol/create_join_table.h>
Public Member Functions | |
| CreateJoinTableRequest () | |
| Constructs a CreateJoinTableRequest object with default parameters. | |
| CreateJoinTableRequest (const std::string &joinTableName_, const std::vector< std::string > &tableNames_, const std::vector< std::string > &columnNames_, const std::vector< std::string > &expressions_, const std::map< std::string, std::string > &options_) | |
| Constructs a CreateJoinTableRequest object with the specified parameters. | |
Public Attributes | |
| std::string | 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. | |
| std::vector< std::string > | tableNames |
| The list of table names composing the join, each in [ schema_name. | |
| std::vector< std::string > | columnNames |
| List of member table columns or column expressions to be included in the join. | |
| std::vector< std::string > | expressions |
| An optional list of expressions to combine and filter the joined tables. | |
| std::map< std::string, std::string > | options |
| Optional parameters. | |
Detailed Description
A set of parameters for GPUdb::createJoinTable.
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.
Definition at line 23 of file create_join_table.h.
Constructor & Destructor Documentation
◆ CreateJoinTableRequest() [1/2]
| inline |
Constructs a CreateJoinTableRequest object with default parameters.
Definition at line 28 of file create_join_table.h.
◆ CreateJoinTableRequest() [2/2]
| inline |
Constructs a CreateJoinTableRequest object with the specified parameters.
| [in] | 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. |
| [in] | 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. |
| [in] | 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. |
| [in] | 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 vector. |
| [in] | options_ | Optional parameters.
|
Definition at line 203 of file create_join_table.h.
Member Data Documentation
◆ columnNames
| std::vector<std::string> gpudb::CreateJoinTableRequest::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.
Definition at line 241 of file create_join_table.h.
◆ expressions
| std::vector<std::string> gpudb::CreateJoinTableRequest::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 vector.
Definition at line 249 of file create_join_table.h.
◆ joinTableName
| std::string gpudb::CreateJoinTableRequest::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.
Definition at line 220 of file create_join_table.h.
◆ options
| std::map<std::string, std::string> gpudb::CreateJoinTableRequest::options |
Optional parameters.
- create_join_table_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 create_join_table_false.
- create_join_table_collection_name: [DEPRECATED–please specify the containing schema for the join as part of joinTableName and use GPUdb::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 ”.
- create_join_table_max_query_dimensions: No longer used.
- create_join_table_strategy_definition: The tier strategy for the table and its columns.
- create_join_table_ttl: Sets the TTL of the join table specified in joinTableName.
- create_join_table_view_id: View this projection is part of. The default value is ”.
- create_join_table_no_count: Return a count of 0 for the join table for logging and for GPUdb::showTable; optimization needed for large overlapped equi-join stencils. The default value is ‘false’.
- create_join_table_chunk_size: Maximum number of records per joined-chunk for this table. Defaults to the gpudb.conf file chunk size.
- create_join_table_enable_virtual_chunking: Collect chunks with accumulated size less than chunk_size into a single chunk. The default value is ‘false’.
- create_join_table_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.
- create_join_table_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.
- create_join_table_enable_sparse_virtual_chunking: Materialize virtual chunks with only non-deleted values. The default value is ‘false’.
- create_join_table_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.
- create_join_table_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.
- create_join_table_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.
Definition at line 343 of file create_join_table.h.
◆ tableNames
| std::vector<std::string> gpudb::CreateJoinTableRequest::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.
Definition at line 229 of file create_join_table.h.
The documentation for this struct was generated from the following file:
- gpudb/protocol/create_join_table.h