SQLのお勉強、グループごとにある最大値の行を取得する

/*SQLのお勉強、グループごとにある最大値の行を取得する
参考サイト
https://qiita.com/nogitsune413/items/f413268d01b4ea2394b1

考え方は、グループの中で最大を取得する。しかしこのテーブルだけでは、
他の情報氏名が得られないので、もとのテーブルとINNERJOINをして得る
つまり2段階方式

SQLで困るのは、C言語のようにフロー的な考え方ではなくて、
まとまった捉え方で出力される。
C言語のプログラム開発に慣れた人がSQLでクエリを書こうとすると
わからなくなるのはループ的な考え方が全く違うからだ。
クエリでは、処理を内部で全部実行してくれるが、C言語は自分で全部
処理する必要があるのでそのギャップがあって、クエリを作るときに
わからなくなってしまう。
でもクエリとストアドプロシジャを勉強してみてわかったのは
DB関連は、クエリとストアドプロシジャでがんばって書いたほうが効率がよい。
無理にC言語やJAVAでデータを配列にするよりもずっと早いし、修正が楽。
たぶんこれは、実際に経験しないとわからないと思う。
特に、複数の言語を勉強していない人にとってはできるだけ労力をかけずに1つの言語を
深く掘り下げようとするから。
でもDBに関しては、その道の言語を深く掘り下げたほうが効率が良いと思う。
ストアドプロシジャを2年ほど勉強しているおっさんの独り言だった。
*/
–基本的な考え方として、グループの中で最大値を出力する。しかし誰かはわからない
元データ

これだと氏名がわからないので誰かわからない。

–グループごとにある最大値の行を取得する