Das Bild unten ist ein Beispiel für die Datenbank, mit der ich arbeiten muss.Wie bekomme ich Top 10 und ORDER BY() von COUNT()
Es gibt mehrere Felder in der Datenbank - Benutzer-ID geht bis USER-0050
Was ich erreichen will, ist ein Top-10-Benutzeraktivität. Basierend auf dem Bild über dem gewünschten Ausgang ist:
User ID Transaction
USER-005 14
USER-001 12
USER-002 12
USER-003 8
USER-004 6
Was ich bisher versucht:
SELECT DISTINCT (userid), count(TCODE) as Transaction
FROM SAP_SECURITY_LOG
GROUP BY TCODE, USERID
aber meine Ausgabe ist nicht das, was ich erreichen will. Ich bekomme
UserID Transaction
User-001 0
User-001 1
User-001 2
User-001 3
User-001 6
Grundsätzlich möchte ich diese alle zusammen fusionieren und dann die Top-10-Transaktionen aller Benutzer-IDs erhalten (von allen 50 Benutzer-IDs)
Jede mögliche Anleitung geschätzt wird. Ich hoffe, was ich versuche, Sinn zu sagen, macht
Meine Ausgabe:
Hält bis benutzer 0050 gehen
Welche Datenbank Verwenden Sie (MySQl, Oracle, ...) –
Und fügen Sie Beispieldaten und erwartetes Ergebnis für mehr als nur einen Benutzer hinzu. –
Meine Datenbank wurde mir in einem Excel-Blatt gegeben und von dann habe ich es geschafft, es in MS Access zu bekommen ... wenn das hilft Ich habe mehr Daten und erwartetes Ergebnis für mehrere Benutzer hinzugefügt – aofe1337