si la via è giusta, anzi obbligata se devi estrarre più colonne dalle tabelle collegate (da cui la mia domanda ... solo?),
per la performance, usando le join, potresti creare una view (ma tutto dipende dalla quantità di dati da scorrere 100, 1000, ....)
la view aiuta il motore del db a predisporre i "percorsi" di ricerca che non devono essere instaurati al momento della query
(... in parole semplici)