When you import 2 or more tables with same fields name, QV create associate. That is 2 fields with same name from 2 or more different tables.Associate is just a way for QV saying this two fields are related.
When you import 2 or more tables which has more than 2 fields with same name,QV create something called Synthetic Key. Synthetic key is not good for performance and therefore QV developer use JOIN or CONCATENATE to elimibate synthetic key. This is not the only reason why developers use JOIN & CONCATENATE but is a reason.
I suggest you read more.
Hope this is helpful.