なお、データベースから読み込んだとき、クラスごとや出席番号順に来るとは限りません。
A組→B組→B組→B組→C組→A組→C組 とかもありえます。
各クラスの生徒数は不明です。


【2】特定のクラスに所属する生徒の情報を取り出したい。
なお、取り出す順番(出席番号)については言及しない。もちろんしてもいい。

  foreach my $key (keys @data{'Class_A'} )

というループを作ってみたのですが、最終的な値(田中とか太郎とか)を取得する方法が分かりません。

  $data{'Class_A'}[$key]{'FirstName'}
  $key{'FirstName'}

など幾つか試してみましたが、全く取得できる気配はありませんでした。
(どちらも「太郎」などの文字列の取得を期待しています)