Joining features spatially
In the previous recipes, you have seen how you can link external data to layers or other tables using a join or a relate. However, what if you want to transfer data from one layer to another but there is no key field to use to link the data? Maybe the two layers in question overlap one another, are next to one another, or share some other spatial relationship; surely there should be some way to link or join the two layers together based on a spatial relationship.
You can join two layers together based on a spatial relationship. This is called a spatial join. A spatial join creates a new feature class that adds the attributes from the joined feature class to the target feature class based on a spatial relationship you define when you run the tool. It is not required that the target and joined feature classes be the same type. You can spatially join lines with polygons, points with lines, or points with polygons, as well as those of the same feature type...