Hi an alle,
Bin gerade bei einer statistischen Auswertung eines Teils meiner SQL-logs. Folgendes als Vorspiel:
Auf der Seite werden User per Zufall ausgewählt und beworben. Der ausgewählte User wird in einer Tabelle promolog eingefügt. Diese Tabelle sieht folgender massen aus :
mit der Abfrage
erstelle ich mir nun eine Übersicht der Aufrufe/anzeigen je User
Wie aber, und das ist mein Problem, errechne ich per SQL die durchnittliche tägliche Anzahl der Anzeigen aller User in den letzten 7 Tagen ?
als erster Gedanke käme mir etwas in dieser Form (was natürlich nicht funktioniert)
Irgendwie stehe ich hier auf dem Schlauch!
Hoffe jemand kann mich hier mit der Nase drauf stossen !
chansel
Bin gerade bei einer statistischen Auswertung eines Teils meiner SQL-logs. Folgendes als Vorspiel:
Auf der Seite werden User per Zufall ausgewählt und beworben. Der ausgewählte User wird in einer Tabelle promolog eingefügt. Diese Tabelle sieht folgender massen aus :
PHP-Code:
+------+----------------+------------------------+------------------.+
| id | called | promoted_user | visitor_ip |
| auto| date | int(20) | char(16) |
+------+----------------+------------------------+-------------------+
| 1 | 2005-02-15 | 15 | xxx.xxx.xxx.xx |
| 2 | 2005-02-15 | 16 | xxx.xxx.xxx.xx |
| 3 | 2005-02-15 | 15 | xxx.xxx.xxx.xx |
| 4 | 2005-02-15 | 9 | xxx.xxx.xxx.xx |
| 5 | 2005-02-15 | 154 | xxx.xxx.xxx.xx |
| 6 | 2005-02-15 | 45 | xxx.xxx.xxx.xx |
+------+----------------+------------------------+-------------------+
etc.
PHP-Code:
SELECT called, promoted_user, count( * )
FROM `promolog`
WHERE 1
GROUP BY called, promoted_user
PHP-Code:
+----------------+------------------------+------------------.+
| called | promoted_user | count |
+----------------+------------------------+-------------------+
| 2005-02-15 | 15 | 5 |
| 2005-02-15 | 75 | 25 |
| 2005-02-16 | 102 | 51 |
| 2005-02-15 | 34 | 17 |
...
als erster Gedanke käme mir etwas in dieser Form (was natürlich nicht funktioniert)
PHP-Code:
SELECT AVG(count(*))
FROM `promolog`
WHERE
called BETWEEN DATE_SUB(NOW(), INTERVAL 7 DAY) AND NOW()
GROUP BY promoted_user
Hoffe jemand kann mich hier mit der Nase drauf stossen !
chansel