Avevo dato per scontato che se non ti interessava il nome sarebbe bastato toglierlo ....

l'ordinamento lo farai in base a quel che ti pare ASC o DESC.

Si poteva usare la sintassi con JOIN, ma e' assolutamente identica nella sostanza.

codice:
SELECT * 
FROM DOCENTE d 
JOIN CORSO c
ON d.id_docente = c.docassociato_corso
Per quanto riguarda la stampa dei record.... mi ricordo di averti postato una soluzione dove con una if controllavi il nome. Se il nome era diverso lo stampavi, se uguale lo saltavi...