In tal caso non so come funziona, non ho mai usato i gruppi. Mi informo poi vi dico, comunque è strano che distinct non abbia effetto.

Intanto riporto la query:
Codice PHP:
$query="SELECT distinct(cd_tr.traccia), cd_tr.* FROM cd_tracce cd_tr
        INNER JOIN tracce_autori_tracce t_a_t
        ON t_a_t.id_cd_tracce = cd_tr.id
        INNER JOIN autori_tracce au_tr
        ON au_tr.id = t_a_t.id_autori_tracce
        WHERE concat(au_tr.nome,' ',au_tr.cognome) LIKE '%
$_GET[principale]%' "
Senza la struttura del database non è che si capisca molto, comunque in sostanza c'è la tabella
autori_tracce che memorizza nomi e cognomi, la tabella tracce_autori_tracce che collega le tracce agli autori ed infine la tabella cd_tracce che contiene tutti i dati delle tracce, il nome, la durata, il cd di riferimento ecc.. il campo traccia della tabella cd_tracce contiene il nome della traccia, ed è quello che voglio univoco. La variabile $_GET[principale] contiene il nome dell'autore e la query cerca tutte le tracce scritte da quell'autore.