Scusa alcio74 mi sono dimenticato di risponderti. Si ho provato ....
siccome lo script era lentissimo ho provato a verificare con mysql_num_rows($query) quante righe trovava. Una esagerazione esattamente 879648
Estraendo invece con 3 singole query dalla tabella1 e poi tabella2 ed infne tabella3 venivano invece rispettivamente 68 - 147 - 88 righe
C'è qualcosa nella query che mi hai dato tu che non funziona anche perchè le tabelle contengono rispettivamente 882 - 830 -779 record ciascuna.

Comunque grazie
Franco