Je me pose une question

Prenons deux tables Mysql liées entre elles par une relation du type à chaque ligne de la table 1 correspond plusieurs lignes de la table 2

Que vaut il mieux faire ?

SELECT T1.champ1, (.....) T1.champN, T2.champ1, (....) T2.champ2 FROM Table1 AS T1 LEFT JOIN Table2 AS T2 ON T1.champX = T2.champY WHERE T1.champZ=Valeur référence

autrement dit une requète qui générera pas mal d'info redondantes

ou bien

SELECT T1.champ1, (.....) T1.champN FROM Table1 AS T1 WHERE T1.champZ=Valeur référence

puis dans une boucle en PHP par exemple lancer autant de requètes que de valeurs différences de T1.champX

SELECT T2.champ1, (....) T2.champ2 FROM Table2 AS T2 WHERE T2.ChampY = ValeurCourantedeT1.champX

La première solution ne génère qu'un seul accès à la base de donnée, mais consomme à mon avis plus de mémoire (à cause des info redondantes). La seconde est la plus économe en mémoire (je pense), mais nécessitent de nombreux accès à la base...

Ma question est peut être ridicule, mais j'ai hérité d'une habitude de développement dans un environnement à très faibles ressources mémoires, où chaque octet compte, et où économiser 10 octets de RAM est très important si c'est possible (microcontroleurs).

Dans le cas de MySQL faut il mieux faire une économie de mémoire ou une économie de connexions ? Y a t il un cas où priviligié l'une ou l'autre ?

Merci d'avance