SQL文で順位を求めるには

順位を求めるSQL文は次のように書きます。

SELECT p.id,p.name,p.point,(SELECT count(*) FROM point_table as p1 WHERE p1.point > p.point) + 1 as rank FROM point_table as p;

元データ point_table

idnamepoint
1ああ田 ああ郎50
2いい中 いい子80
3うう山 うう夫70
4ええ村 ええ美90
5おお野 おお司80

実行結果

idnamepointrank
1ああ田 ああ郎505
2いい中 いい子802
3うう山 うう夫704
4ええ村 ええ美901
5おお野 おお司802

関連記事

スポンサーリンク

COALESCE関数 NULL値でない最初の引数を返す

ホームページ製作・web系アプリ系の製作案件募集中です。

上に戻る