Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Scenario
Where we have two sources of data that share the same structure we can combine these into a single table without the need to perform a merge. The intention is that we will keep all records so for every record we pass in we will get one out.
For example, if we are performing a data migration where we are consolidating data from 3 separate systems that all follow the same data structure we can use this technique.
Solution
- It is assumed that all data sources are imported into their own tables in an analysis model.
- We will refer to all tables that are due to be combined as input tables and the table where the data is being combined as the output table.
- From the Create section of the analysis toolbar, click
Insert excerpt _datasource_show_tables _datasource_show_tables nopanel true drag the
onto your model.Insert excerpt _table_calculate _table_calculate nopanel true In the settings, set the Name
Businesses Merged
The attributes can be created manually using the plus button in the Attributes section. Here we will use the attributes from the Businesses 1 table to automatically setup our merge attributes.
For each of the input tables, from its hover over toolbar, select
, then click the end of the arrow onto the output table.Insert excerpt _pipe _pipe nopanel true Hover over the
first input table and from the hover over toolbar click
.Insert excerpt _attributes_show_hide _attributes_show_hide nopanel true Tick all of the attributes and
drag them
onto the output table.
- If PhixFlow asks for confirmation. Select Use original attribute name. Then click the arrow to confirm
Click OK to save and close the settings for the merge table.
Connect the Inputs
In the analysis model, hover over the Businesses 1 table
.
- This automatically creates the attributes for us in the output table.
- We now need to set the attributes up to pull information from all input tables.
- Click on the output table, in its Attributes section double click the first attribute
- Remove the pipe prefix, typically this will be "in.". By doing this we are telling PhixFlow to look for this attribute name regardless of which pipe it is coming from.
- For Example,
in.CompanyName
would becomeCompanyName
.
- For Example,
- Repeat this for all of your attributes, the configuration is illustrated below:
Click OK to save and close the settings for the output table.