Joins
Add more information to the dataset by linking an external table or database to the dataset.
Dataset Context Menu > Dataset Properties > Joins
One of the most important issues in GIS is matching data from diverse sources together. One of the techniques to do so is Table Joining. Based on the attributes in your dataset, you can link an external data table to your dataset and embed it.
Table Joining is based on the principle of having common attribute fields. When a Spatial Object in your dataset has a value for that attribute field that is matched with the external table, the external table's row is included in the Spatial Object.
By defining a Table Join, your Spatial Objects are extended with all rows from the external table that have equal values for the defined attributes.
Table Join Setup
The aim of a table join is to match two tables, one of the dataset and an external table, based on common fields.
Table Joins are definitions. You specify the definition in this window. The joined table will become an new Attribute Set in your model and will behave as any other Attribute Set.
General | ||
---|---|---|
Model | Choose the model in which the Attribute Table is located. | |
Joins | Choose an existing Table Join Definition. | |
New | Define a new Table Join Definition. | |
Remove | Delete the selected existing Table Join Definition. | |
Join With | ||
Table Location | Enter the file location of the external table manually (either filename or database reference) or use the following buttons: |
|
Open Table | Select the external table in the resource browser (supported formats are txt, csv and dbf). | |
Open Database | Select a table from a database connection. First select a Database, then a table from that database. | |
Table Name | Give a name to the external table. This is also the name of the new Attribute Set and the Table Join Definition. | |
View Table | View an example of the external table. | |
Dataset Attribute | Choose the attribute of the dataset that matches an attribute of the external table. | |
Table Attribute | Choose the attribute of the external table that matches the attribute of the dataset. | |
Joins | List of pairs of attributes (one of the dataset and one of the external table) that are matched with eachother. | |
Add | Add the Dataset Attribute and the Table attribute to the Join-List as a pair of attributes. | |
Remove | Remove the selected pair of attributes from the Join-List. | |
Applying | ||
Join Attribute Table | Execute the Table Join Definition. | |
Save Join Definition | Save the Table Join Definition. |
Open Database
The connection parameter specifies to which database Orbit must connect. Therefore, the connection needs to be known beforehand (see Preferences of Databases). Once the connection is made, you can enter a TABLE name, a VIEW or QUERY name.
Table Name
This is also the name of the new Attribute Set and the Table Join Definition.
Joins
The Dataset Attribute and the Table Attribute must have common attribute fields. Although the content of the attribute fields must be the same, the Attribute Name (or column header) can be different.
Table Join Definitions can be based upon 2 or more attributes. Select the additional Dataset and Table Attributes, and match them by clicking 'Add'. A new pair of attributes will appear in the Join-List.
Object Inspector
The Joined Table is represented as values in a new Attribute Set. Consult the new attribute values in the Object Inspector to see the details of the selected object or consult them in the Attribute Table.
In the Object Inspector, the attribute values who are linked to the external table are displayed in yellow.
Example 1:
Example 2:
In the following example, each object of the dataset is linked with seven records from the external table. In the object inspector, those records appear as more attribute values next to each other.
Example 3:
Storage
The Table Join Definition is saved in the Orbit Resource Descriptor file (ORD). The external table is not copied into your dataset, only the reference to it is stored. Next time you open the dataset, the Table Join will be executed again in real time. You thus have always refreshed access to the external table, but have to take care that the file or database remains available.
Once the join is completed, Orbit does not check changes to the original table file. Also, Orbit does not allow editing a Joined Table. Editing of external data is expected to be done by external tools.
You may wish to export the dataset as OVF file : this will embed the external table as common attributes to the data and will loose reference to the original file.