gav^ is close, but there's a method that's closer yet; in fact it does exactly what you're asking for:
fetchall_arrayref - no, that's not a typo, it will return a list of hashes, provided you pass it a hashref as argument.
my $row_aoh = $sth->fetchall_arrayref({});
Note that you if you populate the anonymous hash, the keys are taken to select the desired columns from your query. See the
DBI POD.
Makeshifts last the longest.