MySQL - LIMIT nach unterschiedlichen Values

  • Guten Abend,

    ich hoffe, dass jemand von euch eine Antwort auf meine Frage weiß. Derzeit habe ich eine Tabelle mit Statistiken über Spieler, eine sogenannte Rundenstatistik. In dieser Tabelle stehen also eine auto increment ID, eine RundenID, der Spielername und diverse Angaben wie Frags, Deaths, etc. Mein Problem ist nun, dass ich eine Statistik daraus erstellen möchte, und dafür aus den letzten X Runden die Spieler absteigend mit den meisten Frags auflisten möchte (Eine TOP X Liste).

    Tabelle:
    id - rundenID - spielername - frags - deaths
    ------------------------------------------
    1 - 1 - hans - 2 - 3
    2 - 1 - steve - 3 - 2
    3 - 2 - hans - 1 - 2
    4 - 2 - steve - 2 - 1

    Diese Tabelle könnte nun so beliebig fortgeführt werden. Es muss auch nicht unbedingt jeder Spieler jede Runde spielen. Wichtig ist mir bloß, das ich die letzten X Runden (mithilfe der RundenID) zusammenfassen möchte, sodass Werte wie frags/deaths für die letzten X Runden addiert werden und am Ende des MySQL-Selects eine Liste heraus kommt, die man ab- oder aufsteigend sortieren kann:

    TOP 2 Spieler
    spielername - frags - deaths
    ---------------------------
    steve - 5 - 3
    hans - 3 - 5

    Ich google mich schon seit einer Ewigkeit tot und könnte wetten, ich suche falsch. Hat jemand von euch einen Tipp, wie ich das gelöst bekomme? Ich erwarte ja keine Komplett-Lösung und bin gewillt, zu lernen.

    Vielen Dank für jeden Tipp oder Hinweiß.

  • Naja nehmen wir dein Ziel mal auseinander:
    Die Liste soll aus den letzten X runden bestehen. Das heisst was für die Spalte rundenID in der WHERE-Klausel?
    Du willst alle Frags zusammenzählen. Das machst du am besten in dem du die Frags als "neue spalte" einführst und einen Subquery benutzt (eine andere Lösung fällt mir nicht ein).
    Die Liste soll nach Frags sortiert sein. Das heisst was für die ORDER-BY-Klausel?

    Der, der weiß dass er nichts weiß, weiß mehr als der, der nicht weiß, dass er nichts weiß.

    Wer nach etwas fragt, geht grundsätzlich das Risiko ein, es auch zu bekommen!

  • Hallo Tobse,


    tut mir leid, dass ich mich erst nach so langer Zeit wieder melde. Hatte viel zu tun und dadurch geriet mein Beitrag hier etwas in den Hintergrund. Deine Antwort kam relativ schnell und ich habe kurze Zeit danach dann auch gefunden, was ich gesucht habe, da hast du mich auf den richtigen Weg gebracht - danke! :)

    So ein Forum lobe ich mir, wo man auch als Gast einen guten Tipp bekommt.

    In diesem Sinne, eine schöne restliche Woche, das Wochenende ist ja zum Glück bald in greifbarer Nähe :)

    Lg