php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 17.09.2006, 19:02  
Erfahrener Benutzer
 
Registriert seit: 25.01.2004
Beiträge: 239
bicpi
Standard Besucherstatistik:Monat mit den meisten Hits ermitteln/MAX()

Hi,
ich habe eine Statistiktabelle, die pro Webseiten-Besuch den Startzeitpunkt des Besuchs in eine Tabelle mit nur einer DATETIME-Spalte schreibt.

Code:
CREATE TABLE `visits`(
 `dt` DATETIME,
  INDEX(`dt`)
)
Ziel ist nun, den Monat mit den meisten Besuchen in einem bestimmten Jahr ausfindig zu machen.

Dazu habe ich die Besuche pro Monat eines bestimmten Jahres (@year) in eine temporäre Tabelle überführt:

Code:
CREATE TEMPORARY TABLE `tmp_visits`(
  `d` DATE,
  `visits` INT
) ENGINE MEMORY;

INSERT INTO `tmp_visits`
SELECT CONCAT_WS('-', YEAR(`dt`), LPAD(MONTH(`dt`), 2, '0'), '01') AS 'd',
       COUNT(*) AS 'visits'
FROM `visits` WHERE YEAR(`dt`)=@year GROUP BY MONTH(`dt`);
Mit folgender Abfrage kann ich ja nun die höchste Besucherzahl in einem Monat in dem Jahr ausfindig machen:

Code:
SELECT MAX(`visits`) FROM `tmp_visits`
Ich würde aber gerne den Monat des Jahres gleichzeitig mit gewinnen.
Nun kann ich das bisher nur mit zwei Abfragen erreichen:

Code:
SELECT @maxVisits:=MAX(`visits`) AS 'Meiste Besuche/Monat'
FROM `tmp_visits`;

SELECT DATE_FORMAT(`d`, '%m/%Y') AS 'Monat(e)/Jahr,
       `visits` AS `Besuche` FROM `tmp_visits` WHERE `visits`=@maxVisits;
Wie krieg ich denn den Monat in der gleichen Abfrage raus, in der ich den Monat mit den meisten Besuchern mit MAX() bestimme? Bzw. geht das überhaupt? Habe da noch mit HAVING rumprobiert, hat aber alles nicht das rechte Ergebnis gebracht.

Habt ihr eine Idee?
__________________
Viele Grüße
bicpi ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 17.09.2006, 19:19  
Moderator
 
Benutzerbild von agrajag
 
Registriert seit: 02.10.2006
Beiträge: 3.820
PHP-Kenntnisse:
Fortgeschritten
agrajag wird schon bald berühmt werdenagrajag wird schon bald berühmt werden
Standard

Ich würde das ganz ohne irgendwelche temporären Tabellen etc. machen:


SELECT DATE_FORMAT(dt, '%m-%Y') as Datum, COUNT(*) as Besucher FROM visits GROUP BY Datum ORDER BY Besucher

Und wenn's nur der Monat mit den meisten Besuchern sein soll eben noch ein LIMIT 1.

Oder habe ich dich nciht richtig verstandne und du willst ganz was anderes?
__________________
Today you...Tomorrow me.
agrajag ist offline   Mit Zitat antworten
Alt 17.09.2006, 19:30  
Erfahrener Benutzer
 
Registriert seit: 25.01.2004
Beiträge: 239
bicpi
Standard

Tja, das hat mir jetzt nicht unwesentlich weitergeholfen, 1000 Dank! )

Manchmal versteift man sich da auf was...
__________________
Viele Grüße
bicpi ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Reaload Sperre beim Themen Hits count? litterauspirna PHP Tipps 2008 9 15.07.2008 12:59

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
visits ermitteln, meisten hits bei google, meiste hits bei google, homepage visits ermitteln, besucherstatistik hits, homepage mit den meisten hits, hits php, die meisten hits bei google, meiste besuche, meisten hits google, besucherstatistik homepage ermitteln, hits pro monat, besucherstatistik php, group by datum monate, anzahl der hits einer website rausfinden, uvpm, visits pro monat feststellen, visits von websides ermitteln, abfrage von besucherzahlen einer webseite, maximalwert eine datenbank ermitteln php

Alle Zeitangaben in WEZ +1. Es ist jetzt 20:19 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.