seleziona nome, eta dalla tabella utenti dove eta > 18 and citta = 'puglia' and nome like 'gilberto%' raggruppando per citta e filtrando per avere sum(importo) > 100 e ordina per eta in ordine desc
select nome, eta from utenti where eta > 18 and citta = 'puglia' and nome like 'gilberto%' group by citta having sum(importo) > 100 order by eta desc