foreach $key (keys(%db)) { for ($record_num=0; $record_num<@{$db{$key}}; $record_num++) { foreach $field (@{$db{$key}[$record_num]}) { printf("Record %d of %s is %s.\n", $record_num, $key, $field, ); } } }