I have two shapefiles as shown in attached picture:

  1. Buildings footprint (polygons) which includes house number and street name beside other fields.

  2. Red shapes (polygons) which include house number and street name with information for each building distributed in many fields.

The common fields in both shapefiles are house number and street name.

The task is creating new layer that contains Buildings footprint (target features) with corresponding Red shapes (join features) based on matching house number and street name (common fields).

For example in the attached image:

Red shape No. 1 shall be joined to building 18 (same house number & street name for both).

Red shape No. 2 shall be joined to building 16 (same house number & street name for both).

Red shape No. 3 shall be joined to building 22 (same house number & street name for both). enter image description here

I tried "Spatial Join" with match options INTERSECT, HAVE_THEIR_CENTER_IN and WITHIN_A_DISTANCE, but i can't achieve the desired result.

How I would do that in ArcMap 10.3 ModelBuilder?

3 Answers 3


I would recommend using the Union tool. Using Modelbuilder you will use this tool where both of your shapefiles are input to the union tool and you can specify and setting within the properties of the union tool.

Here is a general overview of the tool below:

Computes a geometric union of the input features. All features and their attributes will be written to the output feature class**

enter image description here

Note: This tool may generate multipart features in the output even if all inputs were single part. If multipart features are not desired, use the Multipart to Singlepart tool on the output feature class.

enter image description here

This would be the outcome if you check 'gaps allowed'

enter image description here

  • I think union tool couldn't help, since some red shapes far from buildings footprint. In addition to change of figure of red shapes which not preferred split them to many shapes. are there any further clue ?
    – Alfa
    Commented Jan 18, 2017 at 22:07


  1. On both layers create a field combining information from the streets and house numbers.

  2. Convert 'Red shapes' to table

  3. Join 'Buildings' and 'Red shapes table' (Add Join)

It solved like that:

1- Spatial join (one to many) with match option INTERSECT 2m radius.

2- Select tool with SQL query :

"HouseNo" = "HouseNo" AND "Street" = "Street".

Thanks for all ideas.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.