Feature request #4924
Join attributes - add the option of creating a shapefile with matching attributes only
|Pull Request or Patch supplied:||No||Resolution:|
|Easy fix?:||No||Copied to github as #:||14728|
Currently the output of the join function keeps all records/features of both shapefiles/tables. It would be useful to add the option of keeping only matching records/features during the table join.
This exists in ArcGIS and is explained in this link, under "Joining attributes in one table to another".
Apparently the join function of mmqgis only keeps matching records.
#4 Updated by Antonio Locandro over 6 years ago
This is very important feature for some of us that do this often. I believe when doing a join there should be an option to keep matching records or all as follows:
- Add vector join ***
Join layer -
Join Field -
Target Field -
[x] Keep only matching records (by default)
[ ] Keep all records
[ ] Cache join layer in virtual memory
[ ] Create attribute index on join field
I don't know how other COTS do it but when doing joins I see the fields in the layer where the join is created and I am able to select and do queries on it.
As an extra bonus the possibility to have a check-box to the join to enable/disable it at will
Join layer / Join Field / Target field / Memory Cache / Enable Join
Also currently it only lets you do joins from tables previously loaded to QGIS but in our case we have lots of CSV files we use for joins where we usually just load them at the Join layer stage
#5 Updated by Antonio Locandro over 6 years ago
Ok so spent 2 hours working around to realize that this is the default behaviour, I should have looked at the issue list first. Joining tables is a very common task and the current state of QGIS makes it very hard to do since one would have to several things before having the result one expects.
BTW I wouldn't want to create a layer each time I do a join which is what mmqgis does at the moment