in reply to Keeping a count of matches in a hash that satisfy more than 1 condition

There are shorter solutions line-of-code wise. But all the solutions will still involve iterating through the entire hash of hashes and counting.

You could use something like this, which is shorter but not necessarily faster.

foreach (keys %file){ $stats{$file{$_}{FILETYPE}}++; $stats{$file{$_}{FILETYPE}."_".$file{$_}{VOICEOVER}}++; } foreach (keys %stats){ print "$_ => $stats{$_}\n"; }
You could do each count in a fairly succinct one-liner.
$stats{$file{$_}{FILETYPE}}++ for keys (%file);