これはなに?
ハッシュが詰まった配列をハッシュの特定のキーでソートすることはあると思います。
では、ソートするキーが第一キー、第二キーと複数のキーでソートしたい場合、どうしたら良いのでしょうか?
こうする
hash_array.sort do |a, b|
[a[:key1], a[:key2], -a[:key3], -a[:key4]] <=> [b[:key1], b[:key2], -b[:key3], -b[:key4]]
end
なお、何もつけないと昇順、-をつけると降順になります。
Discussion