はじめに SQLで「あるグループごとに上位〇件ずつデータを取得して比較したい!」 という際にwindow関数を使うとサクッと抽出することが出来ます。 サンプルデータ select * from book; id | name | title | num -------+--------------+--------------------------+-------- 1 | 江戸川 乱歩 | 赤いカブトムシ | 20 2 | 江戸川 乱歩 | 宇宙怪人 | 10 ~ id | name | title | num -------+--------------+--------------------------+-------- 11 | 芥川 竜之介 | アグニの神 | 40 12 | 芥川 竜之介 | 犬と笛 | 10 21 | 小川 未明 | 赤い蝋燭と人魚 | 100 22 |