Mi sa che con una query il massimo che puoi ottenere è una cosa del genere
codice:
set @nazione ='',@regione ='', @citta='',@zona='';
select if(nazione=@nazione,'',nazione) as naz,
if(regione=@regione,'',regione) as reg,
if(citta=@citta,'',citta) as cit,
if(zona=@zona,'',zona) as zon,
annuncio,
@nazione:=nazione,@regione:=regione,@citta:=citta,@zona:=zona
from tabella
order by nazione,regione,citta,zona,annuncio
che però non fa altro che dare una maggiore leggibilità alla tua query.
Se questa soluzione non ti soddisfa devi giocare col php.