2016-07-06 5 views
-2

Ich mache ein MySQL-Projekt, wo ich abrufen muss, wie viele Ergebnisse/Zeilen sind, bis der Wert von points Zeile geordnet ist.SQL Anzahl der Zeilen, bis einen bestimmten Wert erreicht

Ich tat dies, aber es ist ein verpfuschter Job-Code, und ich denke, ich kann es mit einem einfachen SQL mit einer COUNT(value) Funktion verbessern.

#Python 
sql = "SELECT nick FROM users ORDER BY points;" 
cursor.execute(sql) 
result = cursor.fetchall() 
for row in result: 
    rank += 1 
    if nick == sender: 
     print("you're rank number #" + str(rank)) 

Antworte mir nicht mit Python-Code, es ist nicht erforderlich. Ich habe es gerade gepostet, um dich wissen zu lassen, was ich mehr oder weniger versuche zu bekommen.

+0

ersetzt werden So versuchen Sie, die ersten X-Zeilen zu bekommen? – Fairy

+0

@ st0ph Mmm, ja ziemlich genau, ich muss wissen, wie viele Benutzer vor ihm sind –

+1

Eine bessere Möglichkeit auszudrücken, was Sie tun möchten, ist die Verwendung von Beispieldaten und gewünschten Ergebnissen. –

Antwort

0

Angenommen, Sie sind in der Lage eine ID von nick zu bekommen,

select count(1) from users where id < ? 

wo? muss mit der Benutzer-ID

+0

Tut mir leid, ich habe nicht gesagt, dass ich die Benutzer durch 'Punkte' bestellen muss, nicht' ID' –

+0

dann Punkte in der Abfrage verwenden, nicht ID –

Verwandte Themen