[GIS] After performing table join all the fields are “NULL” in QGIS

attribute-joinsattribute-tablefields-attributesqgis

Within QGIS, I joined .dbf table containing population data to a shapefile of Census tracts.

The join field is called "GISJOIN" in both the target table and the shapefile's table, and this attribute has the string data type in both tables.

When I look at the attribute table of the population table after it is loaded within QGIS, all the data is there and looks fine. When I compare the values of the "GISJOIN" fields in each table to each other, they match up perfectly.

However, when I perform the join, inside the Properties dialog, and then look at the shapefile's attribute table, all the new attribute headings are there, added in, but all the values are NULL.

Any idea what is going on here?

Best Answer

When you join the fields between your .csv and your .shp (for example), be sure that the Types are the same (see in Properties of both file).

For example: my "FID" for my .shp was in real as my "ID" for my .csv was in integer. After the join, I get NULLs.

But after changing the type (I created a new "ID" column in my shp) it worked perfectly.

Related Question