my @rows = ( [qw/ 1 a /], [qw/ 6 b /], [qw/ 5 f /], [qw/ 3 v /], [qw/ 9 c /], [qw/ 2 a /], ); my @idx = sort { $rows[$a][0] <=> $rows[$b][0] } 0 .. $#rows; @rows = @rows[@idx];