GIS: Applying Zipcodes to the U.S. Map in ArcMap 10

I recently started working on a project trying to spatially place different data sets and connect them visually with their respective zipcodes. However, what seemed like an easy task became very confusing quite quickly. I started off with zipcode data from the US Census Bureau. You can find the data I was working with for zipcodes here:

I used ArcGIS to quickly do a spatial join between the hydrologic data of California with the zipcodes of California. A spatial join essential joins all the information (both what you can see on a map and the data that is stored in a database associated with each of those locations) that are located in one geographic region together. When I first saw the map, it seemed as if it has worked properly. However, I then exported the data out into an excel file and suddenly it seemed that all the zipcodes were not completely proper. I am in the process of investigating this by looking for any metadata available, etc. However, it seems that this was a good reminder of how all data online is not necessarily easy to identify mistakes in. Going to keep checking up on this!