[mysql]rank的作法

有關資料庫的討論, 都可以在這發表哦~~
回覆文章
頭像
tim
文章: 1379
註冊時間: 2008年 11月 26日, 00:49

[mysql]rank的作法

文章 tim »

在 mysql 中沒有 rank function 可以進行排行. 不過有變通的做法, 利用一個排行變數進行排行, 如下:

代碼: 選擇全部

create table test (sid int, grade int);
insert into test values (1, 15);
insert into test values (2, 50);
insert into test values (3, 26);
insert into test values (4, 80);

select sid, @rank := @rank + 1 from test a, (select @rank := 0) b order by grade desc
就可以排出依 grade 的排行名次了.

其他相關資料:
http://ithelp.ithome.com.tw/question/10069933
多多留言, 整理文章, 把經驗累積下來.....
回覆文章