2016-03-20 44 views
0

如何從下表中找到個人排名,同樣的點數也應該是相同的,就像奧運獎牌表一樣。如何從包含金牌銀牌和銅牌的表格中找到個人排名

表如下:

  Gold Slvr B Total 
India  44 0 0 0 
Australia 7 0 0 0 
Pakistan 5 0 1 6 
Zimbabwe 2 2 2 5 
Afghanistan 2 0 0 0 
NewZealand 1 1 0 2 
England  1 1 0 2 
+0

您是否可以更具體,你想達到什麼結果? – piotrgajow

+0

我需要一個查詢來查找單個國家的排名,例如查詢津巴布韋的排名是第3級,新西蘭和英格蘭的排名是第6位等級,因爲他們有相同數量的金,銀,銅,所以查詢應該排序排名基於黃金的最大數量,然後最大銀然後最大青銅和最大總數。 – user2641435

回答

1

機會是你想要的東西是這樣的:

ORDER BY MAX(Gold) DESC, MAX(Slvr) DESC, MAX(B) DESC 

對於包括與各行的排名,看Rank function in MySQL

0

得到的回答如下: -

選擇排名,電子郵件,tgolds,tsilver,從(選擇電子郵件,tgolds,tsilver,tbronze,@curRank tbronze:= @curRank + 1 AS排名結果中的P, (SELECT @curRank:= 0)r ORDER BY tgolds desc,tsilver desc,tbronze desc,tmedal desc,date asc)as k其中k.email ='$ _SESSION [email]'「;

相關問題