2017-08-18 2 views
-3

Ich möchte den "Rang" eines bestimmten Namens in meiner Datenbank erhalten. Also wenn ich Julia eintippe, möchte ich # 2 bekommen. (Ihr Rang/Platz in der Datenbank)Rang mit SQL anzeigen

NamenPunkte

Julia  1987 
Marc  1479 
Sophia  2517 
+0

Wo ist Ihre Abfrage bisher? –

+0

Dies ist kein Code-Schreibdienst. Bieten Sie Ihren Versuch an und stellen Sie eine spezifische Frage. – Lexi

+0

'Reihenfolge nach Punkten' und eine Fensterfunktion sollte den Trick machen. Viel Glück, sagen Sie uns Ihre Erklärung und wo Sie stecken bleiben, damit wir Ihnen eine Antwort geben können. –

Antwort

0
select rank 
from 
(
    select name, @rank := @rank + 1 as rank 
    from your_table 
    cross join (select @rank := 0) r 
    order by points desc 
) tmp 
where name = 'Julia' 

Die innere Auswahl ordnet die Daten und fügt einen Rang Spalt. Die äußere Auswahl erhält den Rang der bestimmten Person.