Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options

How do I sort a hash by its values?

by Anonymous Monk
on Feb 22, 2000 at 15:14 UTC ( #3860=perlquestion: print w/replies, xml ) Need Help??
Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:

I have a hash containing error-codes from a web-server log, and a number as values. I would like to print them out sorted by the number. How do I do that?

Replies are listed 'Best First'.
Re: How do I sort a hash by its values?
by btrott (Parson) on Feb 22, 2000 at 22:38 UTC
    Read perlman:perlfaq4, "How do I sort a hash (optionally by value instead of key)?"

    But in short:

    @keys = sort { $hash{$b} <=> $hash{$a} } keys %hash;
    @keys now contains the sorted list of keys.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://3860]
Approved by root
[atcroft]: .oO(Then there is the effect if a site changes their timezone, such as when the International Date Line was moved by the purchase of Alaska by the US from Russia in 1867, or several places (I cannot recall off-hand) that moved from one side of the Date
[atcroft]: Line to the other recently....)
[atcroft]: .oO(Then again, you also have to be careful if you had it to the database, and be aware of any assumptions it makes (such as SQLite assuming Gregorian calendar and a day of exactly 86400 seconds)...)

How do I use this? | Other CB clients
Other Users?
Others scrutinizing the Monastery: (4)
As of 2017-04-29 04:49 GMT
Find Nodes?
    Voting Booth?
    I'm a fool:

    Results (531 votes). Check out past polls.