GPUdb C++ API  Version 7.2.2.4
gpudb::MergeRecordsRequest Struct Reference

A set of parameters for GPUdb::mergeRecords. More...

#include <gpudb/protocol/merge_records.h>

Public Member Functions

 MergeRecordsRequest ()
 Constructs a MergeRecordsRequest object with default parameters. More...
 
 MergeRecordsRequest (const std::string &tableName_, const std::vector< std::string > &sourceTableNames_, const std::vector< std::map< std::string, std::string > > &fieldMaps_, const std::map< std::string, std::string > &options_)
 Constructs a MergeRecordsRequest object with the specified parameters. More...
 

Public Attributes

std::string tableName
 The name of the new result table for the records to be merged into, in [ schema_name. ]table_name format, using standard name resolution rules and meeting table naming criteria. More...
 
std::vector< std::string > sourceTableNames
 The list of names of source tables to get the records from, each in [ schema_name. ]table_name format, using standard name resolution rules. More...
 
std::vector< std::map< std::string, std::string > > fieldMaps
 Contains a list of source/target column mappings, one mapping for each source table listed in sourceTableNames being merged into the target table specified by tableName. More...
 
std::map< std::string, std::string > options
 Optional parameters. More...
 

Detailed Description

A set of parameters for GPUdb::mergeRecords.

Create a new empty result table (specified by tableName), and insert all records from source tables (specified by sourceTableNames) based on the field mapping information (specified by fieldMaps).

For merge records details and examples, see Merge Records. For limitations, see Merge Records Limitations and Cautions.

The field map (specified by fieldMaps) holds the user-specified maps of target table column names to source table columns. The array of fieldMaps must match one-to-one with the sourceTableNames, e.g., there's a map present in fieldMaps for each table listed in sourceTableNames.

Definition at line 33 of file merge_records.h.

Constructor & Destructor Documentation

◆ MergeRecordsRequest() [1/2]

gpudb::MergeRecordsRequest::MergeRecordsRequest ( )
inline

Constructs a MergeRecordsRequest object with default parameters.

Definition at line 38 of file merge_records.h.

◆ MergeRecordsRequest() [2/2]

gpudb::MergeRecordsRequest::MergeRecordsRequest ( const std::string &  tableName_,
const std::vector< std::string > &  sourceTableNames_,
const std::vector< std::map< std::string, std::string > > &  fieldMaps_,
const std::map< std::string, std::string > &  options_ 
)
inline

Constructs a MergeRecordsRequest object with the specified parameters.

Parameters
[in]tableName_The name of the new result table for the records to be merged into, in [schema_name.]table_name format, using standard name resolution rules and meeting table naming criteria. Must NOT be an existing table.
[in]sourceTableNames_The list of names of source tables to get the records from, each in [schema_name.]table_name format, using standard name resolution rules. Must be existing table names.
[in]fieldMaps_Contains a list of source/target column mappings, one mapping for each source table listed in sourceTableNames_ being merged into the target table specified by tableName_. Each mapping contains the target column names (as keys) that the data in the mapped source columns or column expressions (as values) will be merged into. All of the source columns being merged into a given target column must match in type, as that type will determine the type of the new target column.
[in]options_Optional parameters. The default value is an empty map.

Definition at line 195 of file merge_records.h.

Member Data Documentation

◆ fieldMaps

std::vector<std::map<std::string, std::string> > gpudb::MergeRecordsRequest::fieldMaps

Contains a list of source/target column mappings, one mapping for each source table listed in sourceTableNames being merged into the target table specified by tableName.

Each mapping contains the target column names (as keys) that the data in the mapped source columns or column expressions (as values) will be merged into. All of the source columns being merged into a given target column must match in type, as that type will determine the type of the new target column.

Definition at line 234 of file merge_records.h.

◆ options

std::map<std::string, std::string> gpudb::MergeRecordsRequest::options

Optional parameters.

The default value is an empty map.

Definition at line 320 of file merge_records.h.

◆ sourceTableNames

std::vector<std::string> gpudb::MergeRecordsRequest::sourceTableNames

The list of names of source tables to get the records from, each in [ schema_name. ]table_name format, using standard name resolution rules.

Must be existing table names.

Definition at line 221 of file merge_records.h.

◆ tableName

std::string gpudb::MergeRecordsRequest::tableName

The name of the new result table for the records to be merged into, in [ schema_name. ]table_name format, using standard name resolution rules and meeting table naming criteria.

Must NOT be an existing table.

Definition at line 212 of file merge_records.h.


The documentation for this struct was generated from the following file: