2016-03-20 14 views
0

Aşağıdaki tablodan bireysel sıralamayı nasıl bulabilirim, aynı puan için Olimpik madalya masasında olduğu gibi sıra da aynı olmalıdır. aşağıdaAltın gümüş ve bronz madalyadan oluşan bir tablodan bireysel rütbe nasıl bulunur?

Tablo:

  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

Daha belirgin olabilir misiniz? , ne sonuç elde etmek istiyorsun? – piotrgajow

+0

Tek bir ülkenin rütbesini bulmak için bir sorguya ihtiyacım var, örneğin, 3. sırada olan Zimbabve'nin rütbesini bulmak için bir sorgu ve newZealand ve İngiltere'nin rütbesi 6. rank, çünkü eşit sayıda altın, gümüş ve bronz var. maksimum altın sayısına göre sıralama, ardından maksimum gümüş, ardından maksimum bronz ve maksimum toplam. – user2641435

cevap

1

Şansı böyle bir şey istiyorum şunlardır:

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

her satırın bir rütbe dahil için Rank function in MySQL bakın.

0

aşağıda cevabını Got: - (SEÇ-posta, tgolds, tsilver, tbronze, @curRank dan

seçme rütbe, e-posta, tgolds, tsilver, tbronze: = @curRank + 1 sonuç p GELEN rank AS (SELECT @curRank: = 0) r SİPARİŞ Tg sütun, tsilver desc, tbronze desc, tmedal desc, tarih asc) k olarak k.email = '$ _SESSION [email]' ';;

İlgili konular