I am attempting to conduct table joins using a common ID field in QGIS. The issue it that the ID field in one table contains letters in the upper case and the other contains them in the lower case. For example, table 1 would have the ID SAM and table 2 has the ID sam. For my purposed a differing case does not make two ID unique if the string is the same otherwise.

I have tried converting the IDs the the same case using the UPPER() and LOWER() function in the field calculator, but due to the size of some of the datasets this can be time consuming and rather inefficient. Is there a way to conduct table joins in QGIS in a manner that is not case sensitive?

  • I don't think there's way to do a case-blind table join in QGIS. You may want to approach your problem by looking for a faster way to convert the IDs to the same case. – csk Nov 29 '18 at 20:24

you can do it in one step using the Virtual Layer in QGIS with a statement like this:

SELECT field1, field2 FROM layer1 JOIN layer2 ON upper(field1)=upper(field2)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.