MySQL und CASE WHEN mit einer Reihe von Werten

Ich habe eine Tabelle Konten und Datensätze, die Tabelle Konten, wo mehrere Datensätze. Ich möchte zu brechen das Konto Summen nach der "Anzahl der Datensätze" - Bereich. I. e. Die Aufschlüsselung der

Count of Records | Count
=========================
0-25 | 100
25 - 50 | 122
50 - 100 | 300

Etc.

Bin ich mit der folgenden Abfrage, aber ich kann nicht ankommen es zu der Gruppe von "grp" das ist, was ich will, jede Hilfe auf die beste Art und Weise zu ändern, die Abfrage?

SELECT count(*) as ct,
    CASE 
        WHEN COUNT(*) < 25 THEN '1-25'
        WHEN COUNT(*) >= 25 < 50 THEN '25-50'
        WHEN COUNT(*) >= 50 < 100 THEN '50-100'
        WHEN COUNT(*) >= 100 < 250 THEN '100-250'
        WHEN COUNT(*) >= 250 < 500 THEN '250-500'
        WHEN COUNT(*) >= 500 < 1000 THEN '500-1000'
        ELSE '1000+'
    END AS grp
    FROM records r,accounts a
    WHERE r.account_id=a.id
    ORDER BY ct

InformationsquelleAutor der Frage kickdaddy | 2010-05-26

Schreibe einen Kommentar