除了MYSQL中的行数据之外,获得行级别的最佳方法是什么?
例如,假设我有一份学生名单,我想在GPA中排名.我知道我可以通过GPA订购,但是有什么最快的方式让MYSQL在我回来的rowdata中返回等级?
这将返回学生的排名,学生ID和GPA.
set @rownum := 0;
SELECT @rownum := @rownum + 1 AS rank, student_id, gpa
FROM `students` ORDER BY gpa DESC
Run Code Online (Sandbox Code Playgroud)
这将返回排名为 rownum
SELECT @rownum := @rownum + 1 rownum,
t.*
FROM (SELECT @rownum:=0) r,
(SELECT * FROM students ORDER BY gpa DESC) t;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3083 次 |
最近记录: |