Skip to main content

Join Features

This tool allows you to combine data from two layers based on attribute matching or spatial relationships. The result is a new layer containing the Target Layer's geometry and attributes, enriched with attributes from the Join Layer.

1. Explanation

Joining is the process of attaching fields from one layer (Join Layer) to another layer (Target Layer).

GOAT supports three join methods:

  • Attribute — match features based on a common field (e.g., matching a zip code in both layers).
  • Spatial — match features based on their geometric relationship (e.g., features that intersect).
  • Spatial and Attribute — requires both a spatial overlap and a matching attribute.

An Attribute Join links two layers by comparing values in a shared field. Every feature in the Target Layer is matched against features in the Join Layer where the field values are equal.

Basic Attribute Join

Join Type

The Join Type controls which features appear in the output:

  • Inner Join — only features with a match in both layers are kept. Features without a match are dropped.
  • Left Join — all features from the Target Layer are kept. Features without a match receive NULL for the joined fields.

One-to-One

When each target feature matches at most one feature in the Join Layer, the result has the same number of rows as the Target Layer.

One-to-One Join: Inner Join vs Left Join

One-to-Many

When one target feature matches multiple features in the Join Layer, the result contains one row per match — the target geometry is repeated for each matching record.

One-to-Many Join: Inner Join vs Left Join

2. Example use cases

Attribute Join

  • Add population data to district areas (matching on district ID).
  • Combine survey results with census boundaries (matching on tract ID).

Spatial Join

  • Count the number of schools within each city district.
  • Find which municipality each point of interest belongs to.
  • Sum the total length of roads within a park boundary.

Spatial and Attribute Join

  • Match buildings within a flood zone that also share the same building type.

3. How to use the tool?

1
Click on Toolbox Toolbox. Under Data Management, click on Join Features.

Select Layers

2
Select your Target Layer — the main layer whose geometry you want to keep.
3
Select your Join Layer — the layer containing the fields you want to add.

Match Method

4
Under Match Method, enable Attribute Match, Spatial Match, or both.
5
Under Attribute Relationship, click + Add Match Field, then select the Target Field and the Join Field — the shared field used to match features between the two layers.

Join Options

6
Select the Join Type: Inner Join (keep only matched features) or Left Join (keep all target features, unmatched get NULL).
7
Select the Match Handling: One to One or One to Many.
8
Optionally, enable Add Join Fields to select which fields from the Join Layer to include in the output, and/or enable Calculate Statistics to compute aggregated values for matched features.
9
Click Run to execute the join. The result layer will be added to the map.
Hint

Calculation time varies by settings. Check the status bar for progress.