#!/usr/bin/perl use strict; use warnings; my ($sorthash); $sorthash->{'10'}->{'20'}= '1'; $sorthash->{'40'}->{'50'}= '4'; $sorthash->{'20'}->{'30'}= '2'; foreach my $diff (sort {$sorthash->{$b} <=> $sorthash->{$a}} keys %{$sorthash}) { foreach my $rptNo (keys %{$sorthash->{$diff}}) { print "$diff--- $rptNo\n"; } }