Combines multiple (two or more) data sources into a single output. To add new inputs, you can simply drag new connections onto the Cat node.
If the input fields (column names) across all input data sources are the same, by default the Cat node outputs all records, with the data from the second input pasted below the data from the first input, and so on. If the input fields are not the same across all inputs, configure the ConcatenationMode property by selecting union or intersection:
- union: Displays all fields from all inputs, with NULL where a data set is missing a field.
- intersection: Displays only the fields that are common to all inputs.
Example
You have two data sets that you want to combine. The inputs are as follows, where both data sets have the same field names:
Data set 1
Field_One | Field_Two | Field_Three |
John | Smith | 1 |
David | Jones | 2 |
Data set 2
Field_One | Field_Two | Field_Three |
Sarah | Parry | 3 |
Rebecca | Young | 4 |
Cat node output: exact
Given that the field names are the same across both data sets, the default ConcatenationMode property setting (exact) would give the following output:
Field_One | Field_Two | Field_Three |
John | Smith | 1 |
David | Jones | 2 |
Sarah | Parry | 3 |
Rebecca | Young | 4 |
If the field names were different, for example:
Data set 1
Field_One | Field_Two | Field_Three |
John | Smith | 1 |
David | Jones | 2 |
Data set 2
Field_One | Different_Two | Field_Three |
Sarah | Parry | 3 |
Rebecca | Young | 4 |
Cat node output: union
Setting the ConcatenationMode property to union would give the following output:
Field_One | Field_Two | Field_Three | Different_Two |
John | Smith | 1 | NULL |
David | Jones | 2 | NULL |
Sarah | NULL | 3 | Parry |
Rebecca | NULL | 4 | Young |
Cat node output: intersection
Setting the ConcatenationMode property to intersection would give the following output:
Field_One | Field_Three |
John | 1 |
David | 2 |
Sarah | 3 |
Rebecca | 4 |
Properties
ConcatenationMode
Optionally specify how to merge data. Choose from:
- Union - Outputs all of the fields across the inputs, filling in nulls for fields not present in a given input.
- Exact - The fields for all inputs must be the same.
- Intersection - Outputs all the fields common to the inputs.
The default value is Exact.
TypeConversion
Optionally specify how to handle fields that have the same name, but different types. Choose from:
- none: No type conversion, all fields must match exactly.
- numeric: Numerical conversions will occur, int -> longint -> double precision float.
- unrestricted: Numerical conversions will occur; additionally, incompatible types will be converted to string, if possible.
The default value is numeric.
Example data flows
A number of sample Data Flows are available from the Samples workspace, found in the Analyze Directory page.
In the Directory under the /Data360 Samples/Node Examples/
folder, you will find "Filtering Splitting and Concatenating Data", which shows examples of how to use this node.
Inputs and outputs
Inputs: in1, multiple optional.
Outputs: Concatenated Data.