sql >> データベース >  >> RDS >> Mysql

与えられた表で各主題のトップ3トッパーを見つける方法

    これは、変数を使用して行うことができます。

    select t.*
    from (select t.*,
                 (@rn := if(@s = subject, @rn + 1,
                            if(@s := subject, 1, 1)
                           )
                 ) as rn
          from t cross join
               (select @rn := 0, @s := '') params
          order by subject, marks desc
         ) t 
    where rn <= 3
    order by t.subject, t.rn;
    


    1. 検索結果をカテゴリごとにどのように分けますか? MySQL + PHP

    2. HasManyの関係で注文するLaravel5

    3. java.sql.SQLException:データベースが選択されていません

    4. Word、Excel、PowerPointでクイックアクセスツールバーを表示または再表示する方法