MySQLにはランキング機能はありません。最も近い方法は、変数を使用することです:
SELECT t.*,
@rownum := @rownum + 1 AS rank
FROM YOUR_TABLE t,
(SELECT @rownum := 0) r
それで、私の場合、それはどのように機能しますか? col1とcol2のそれぞれに1つずつ、合計2つの変数が必要ですか? col1が変更されたときに、Col2を何らかの方法でリセットする必要があります。..?
はい。 Oracleの場合は、LEAD関数を使用して次の値でピークに達することができます。ありがたいことに、Quassnoiは必要なもののロジックをカバーしていますMySQLに実装する 。