最高点にポイントを追加したいと思います。私のテーブルは
生徒の最高 3 点にポイントを与えようとしています。1 番目に高いマークは 5 ポイント、2 番目に高いマークは 3 マーク、3 番目に高いマークは 1 マークになります。
最高のマークを選択するためにこのコードを使用しています。
select t1.ID, t1.Name, t1.Section, t1.Marks from myTable t1 join
(select Section, substring_index(group_concat
(distinct Marks order by Marks desc), ',', 3) as Marks3
from myTable group by Section ) tsum on t1.Section = tsum.Section
and find_in_set(t1.Marks, tsum.Marks3) > 0 ORDER BY Section, Marks DESC, ID Desc
1 番目に高い値に 5 点、2 番目に高い値に 3 点、3 番目に高い値に 1 点を追加したいと思います。学生のマークが重複する場合があります。
http://www.sqlfiddle.com/#!2/dca0c/1を参照してください。
だから私の最終的な出力
私を助けてください..