私は列を持つテーブルを持っています:
ID名ランクrank_pts 1 ニック 0 15 2 なし 0 12 3 Non2 0 26
rank_pts でランクを設定するにはどうすればよいですか?
この回答をチェックして、rank_ptsでランク付けするだけでなく、2つのrank_ptsが同じである状況を処理する方法を確認してください。スコアをrank_ptsに置き換えます
変数が必要です。
SET @i= 0;
UPDATE your_table SET rank = (@i:=@i+1) ORDER BY rank_pts;
update your_table
join (SELECT @row:= 0) r
set rank = (@row := @row + 1)
order by rank_pts desc;