Question: How do I join attribute tables in ArcGIS?

Answer: Joining attribute tables is relatively straightforward in ArcGIS. The key things to keep in mind are 1) what the id-field or join-field is that will be used and 2) whether the join is temporary join or a permanent join. The instructions here apply to working with coverages and geodatabases. Also, it assumes that the data to be joined is already in an INFO table (if working with coverages) or a geodatabase table (if working with a geodatabase).

1. Before the data is joined, the attribute table for the coverage (or geodatabase) will be absent of some or all of the data that is present in the INFO (or geodatabase) table that is to be joined to it. In order to join this data to the attribute table of the coverage, there must be a common attribute by which to join.

2. This can be accomplished by choosing an attribute from the INFO table (choose an attribute that contains a unique value for each record, for example, 'CODE', or when working with state data, the name of each state is a unique value) and creating a field in the coverage attribute table to hold the data for that attribute (for instance, creating a blank field in the coverage attribute table that is also called, 'CODE', though it can be named anything).

3. At this point, there should be an INFO table with various fields (attributes) of data ('CODE', 'ZONING', 'BUILDINGS', etc.) and an attribute table for the coverage that will have some fields such as 'PERIMETER', 'AREA', etc. but will also have the blank field that was created in 2, above (such as 'CODE'). This attribute will have data associated with it in the INFO table but will be blank or contain '0's in the coverage attribute table.

4. Edit the coverage attribute table. Do this by selecting a record or feature (parcel polygon, for instance) in the coverage and enter its corresponding attribute (for example, enter the code for each corresponding parcel provided on a hand-drawn parcel map). Do this for every record or feature. So now the common attribute in the coverage attribute table (like 'CODE') is no longer blank but contains data. This common attribute between the coverage attribute table and the INFO table is the join item.

5. Now it is just a matter of joining the data in the INFO table to the coverage attribute table to create an attribute table for the coverage that contains not only the original attributes but also the attributes that were contained in the INFO table (after the join is complete, for instance, the coverage attribute table would now contain 'PERIMETER', 'AREA', 'CODE', 'ZONING', 'BUILDINGS', etc.). Keep in mind that there will be times in which the coverage attribute table and the INFO table will already have an attribute in common. When this is the case, there is no need to create a blank field in the coverage attribute table. Just join the INFO table to the coverage attribute table by using the common attribute as the join item.

6. A temporary join is created through these steps. If you save your ArcMap session, quit ArcMap and reopen your saves session, you will still see the joined data in your spatial attribute table. However, these data are not necessarily permanently joined (you can tell by starting a new ArcMap session, adding the single dataset and seeing if the appended data are there). To make a spatial datastet that has the attribute data table permanently joined to the spatial attirbute table simply right-click on the dataset in the Table of Contents then select Data - Export Data. This will create a new dataset that does have the attribute data permanently appended to the spatial data.

Website Copyright Tom Evans 2000
Last Updated 1/10/00