I have three shapefiles of building footprints for a city. Each shapefile has a field called "Status" with attributes 1, 2, or 3. For example:

  • Shapefile A, Polygon 1 = 1
  • Shapefile B, Polygon 1 = 2
  • Shapefile C, Polygon 1 = 1

Is there a way to merge the three shapefiles together based on the field attributes, so that Shp A and Shp C will be one, but not include Shp B?

In the end I only want one shapefile (let's call this Shp D) where only the polygons that has the same attribute across Shp A, B, and C to be included. In the example above, since Shp B Polygon 1 doesn't equal the same as Shp A Polygon 1 and Shp C Polygon 1, I do not want it in the new shapefile (Shp D).

  • 1
    Do you mean two shapefiles, one with two features from A and C and one with features from B or merging the features together to create a single feature, so a single shapefile with features A/C and B? Both are possible, but clarifying will help direct the answer to the question.
    – Wes
    Jun 13, 2014 at 18:05

1 Answer 1


Open the attribute tables of the shapefiles and select the features with the desired Status. This can be done by using the 'select by attribute' from the attribute table window. The query might look something like this Sample Query

Do this for all three shapefiles. When all features desired are selected in all three shapefiles merge the selected features from the Geoprocessing Menu-->Merge tool. Select your three layers from the Input Layers dropdown, choose an output file, and customize your new attribute table to your liking by deleting unused attributes, setting merge rules, etc.

Your new shapefile will have all selected features from all three layers.

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.