簡単にですがまとめました。 やりたいこと 商品毎の商品番号, 商品名, 価格を持った下のような2次元配列に対して、価格順または商品名順のソートを行いたい。 shohin = [[1, "carrot", 88], [2, "tomato", 120], [3, "apple", 210], [4, "orange", 105]] 2次元配列をソートする例 上のshohin配列を使ってソートを行う。 sorted = shohin.sort {|a, b| a[2] <=> b[2] # 価格ソート } p sorted # ソート結果 # [[1, "carrot", 88], # [4, "orange", 105], # [2, "tomato", 120], # [3, "apple", 210]] sorted = shohin.sort {|a, b| a[1] <=> b[1]