人生のプチ美学を教えてください!!

Oracleには、ROWNUMがあるので、
SELECT ROWNUM,id,salary FROM emp order by salary;
のように価格(salary)順で順位を振れるので、
そこからSQLだけで現在の順位を取得する事は
できるのですが、
MySQLでROWNUMに変わる機能や、
現在の順位を取得する方法はございますでしょうか?

A 回答 (2件)

質問の内容が良く理解できないのですが、ID番号を振って価格(salary)の順位を表示したいのですか?



順位と言うのは大きい順番に振ることでよろしいですよね。
ならば (IDは自動付番とする)
select ID,salary From enp order by salary;
で salaryの昇順を取っていますよ。

質問内容に回答が入っていたみたいですね。
    • good
    • 0

たぶん、#1の方の意見は、ちょっと的外れかと・・・


失礼。

SELECT COUNT(e1.salary),e0.id,MIN(e0.salary) AS salary
FROM emp AS e0, emp AS e1
WHERE e1.salary <= e0.salary
GROUP BY e0.id
ORDER BY salary;

こういうことでしょうか?
    • good
    • 0
この回答へのお礼

はい。そんな感じです。
ただ同一salaryがある場合に、同一順位ではなく
順位 金額
1 300,000
2 200,000
3 200,000
としたいんです。
やはり、rowNUMの便利さが身にしみます。

お礼日時:2005/09/01 17:19

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

関連するカテゴリからQ&Aを探す