Mai provato a fare un menù con sottolivelli con DOM(javascript) e CSS?
La logica del mio script è identica, solo che è messa in mezzo all'otput della tabella con php. Non penso ci sia un'altra soluzione che non sovraccarichi troppo il server, perchè l'esecuzione è tutta della funzione javascript, e quindi del client. a quanto ho capito da quello che hai detto, vuoi che per ogni record della tua tabella, in output ci sia solo una parte di output, e che l'altra parte di output spunti fuori quando si clicca su un campo, ad esempio se c'è il nome, ci clicchi e sotto spunta il cognome... ma magari non ho capito quello che vuoi fare...