2010-12-01 10 views
0

Ich brauche die Top 10 Benutzer pro CC, basierend auf den gesamten Ausdrucken, die sie gemacht haben.MYSQL Abfrage für die Top 10 Benutzer pro Standort

Hierarchie sieht wie folgt aus

  1. Business Unit
  2. Kostenstellen
  3. Benutzer

Es ist ein one to many Beziehung.

Tabellen wie folgt aussehen:

Business Unit 
'id', name, bu_no 

Cost Center 
'id', bu_id, name 

User 
'id', username, fullname, email, total_prints 

Dies ist derzeit in Excel, aber ich werde die Daten in MySQL erhalten.

Ich muss die MySQL-Abfrage finden, um Top 10 Benutzer (die meisten Drucke) pro Kostenstelle zu zeigen.

Jede Hilfe wäre willkommen. Danke

+0

Sie sollten hier in StackOverflow gute Antworten finden, indem Sie nach den Tags '[mysql]' und '[greatest-n-per-group]' suchen. –

+1

http://frishit.com/2010/07/mysql-selecting-top-n-per-group/ –

+1

Wie ist Ihr Benutzer mit den anderen Tabellen verbunden? Was sagt Ihnen, dass sie x Drucke und CC 1 und y Drucke bei CC 2? Sieht für mich so aus, als wäre Ihre Benutzertabelle eine Insel. – Matthew

Antwort

0

Sortierung nach Absteigend würde die meisten Drucke an der Spitze und die LIMIT 10 würde nur die Top-Ten-Datensätze auswählen.

Hier ist ein Codebeispiel, um zu zeigen, worüber ich spreche.