Probleme mit COUNT, SUM etc.

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Probleme mit COUNT, SUM etc.

    Hallo,
    ich benötige zur Feststellung ob ein bestimmter User noch Dateien downloaden darf, die Daten aus einer DB Protokoll Tabelle.

    Hierzu lese ich die Daten der vorherigen downloads eines users für verschiedene Zeiträume ein, um sie dann zu vergleichen. Nach einigem suchen und testen ist es mir größtenteils auch gelungen.

    Hier einmal ein Beispiel um die Verbrauchsdaten eines Monats zu ermitteln:

    Code:
    SELECT COUNT(log_file_id) AS sumfiles, ROUND(SUM(log_file_size)) AS sumsize 
      FROM aspr7_logs 
      WHERE type = '1' 
      AND log_user = '201' 
      AND (log_datetime >= CURRENT_DATE - INTERVAL 30 DAY) 
      AND (log_datetime <= CURRENT_DATE + INTERVAL 1 DAY) 
      GROUP BY log_user
    Damit erhalte ich z.B:
    sumfiles 5 (anzahl der bisher geladenen Dateien)
    sumsize 524 (Dateigröße in KB aller geladenen Dateien)

    Wie kann ich aber jetzt noch ermitteln, wie oft jede der Dateien (log_file_id) bisher von diesem User (log_user) heruntergeladen wurde.

    Müsste ich da jetzt mit SUM / DISTINCT(log_file_id) rangehen?

    Irgendwie komme ich da nicht so recht weiter und wäre für jede Hilfe sehr dankbar.

  • #2
    Habe es jetzt anders gelöst und benutze dafür eine zusätzliche Abfrage in dieser Form:
    Code:
    SELECT log_file_id, COUNT(log_file_id) as count 
      FROM aspr7_logs
      WHERE type = '1'
      AND log_user = '201'
    AND log_file_id IN (7,12,15)
      GROUP BY log_file_id
    Erhalte dann ein Array mit der Anzahl der Downloads je File ID.

    Kommentar

    Lädt...
    X