Having looked at many duplicates I still can't seem to get a concensus especially with regards to using QGIS. I've read Creating duplicate features - many to one - in qgis and several others.

My data format is:

A) Point Shapefile Layer B) Polygon Shapefile Layer

I want to:

Grab all the "non-geometry" attributes of the point data, and merge them with the "geometry" of the polygon parcels it falls within.

Using MMQGIS, Layer->Join Attributes by Location, Spatial Query, etc all yield the same results. I can only get the "first matched" feature.

What I want is for the polygon to have an array where the addresses are shown within it. I have somewhat achieved this using POSTGIS but am suprised that there is no solution in QGIS.

Am I correct?

  • In the project properties there is a tab for defining relations. This is where you can define N:1 relationships.
    – Liam G
    Nov 18, 2017 at 21:29

1 Answer 1


If the polygon layer has an id field (unique for each polygon), you can try to do it the other way around, that is:

Join the point layer to the polygon layer using for instance the NNJoin plugin. This will attach the attributes (including the id) of the closest polygon to each point in the point layer.

Remove all points that are not contained in a polygon (distance greater than 0).

The points can now be joined to the polygon layer using the polygon id (a non-spatial join). In QGIS you can do this using "Relations" in the Project properties (see for instance https://docs.qgis.org/2.18/en/docs/user_manual/working_with_vector/attribute_table.html#creating-one-or-many-to-many-relations).

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.