アプリ版:「スタンプのみでお礼する」機能のリリースについて

MySQLでの、ランキング表示について質問です。

select u1.s_id , s.s_name , sum(quantity) 売上数,
(select count(*) 1 from (select sum(quantity) kei from u_data
group by s_id) u2
where sum(u1.quantity) < u2.kei) ランキング
from u_data u1 inner join syouhin_m s on u1.s_id = s.s_id
group by u1.s_id , s.s_name
order by 4;

上記のSQL文で (where sum(u1.quantity) < u2.kei) の部分が
良く分からないので、解説できる人はよろしくお願いします。
(実行もできるし、答えも合っています。)

質問者からの補足コメント

  • SQL文の2行目にあるcount(*) 1というのは、count(*)+1という意味です。
    タイプミスです。

      補足日時:2015/02/28 02:06

A 回答 (1件)

ランキングの考え方


自分より上位に何人いるかをcountしてそれプラス1が自分の順位ということです
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!