$entry{$table}{A}{RANK} = R#3; $entry{$table}{C}{RANK} = R#2; $entry{$table}{B}{RANK} = R#1; @array = map { $_->[0] } sort { $b->[1] cmp $a->[1] } map { [ $_, $entry{$table}{$_}{RANK} ] } keys %{$entry{$table}}; print ">> @array <<\n"; __END__ >> A C B <<