Van egy mysql táblám, amelyben a weblapom látogatásainak technikai adatait (dátum, idő, ip, böngésző, oprendszer, stb.) naplózom statisztikai célból:
CREATE TABLE `adatbázisom`.`visitors` (
`sorszam` int(11) NOT NULL AUTO_INCREMENT ,
`datum` date NOT NULL default '0000-00-00',
`ido` time default NULL ,
`ip` varchar(15) COLLATE utf8_unicode_ci default NULL ,
`kiszolgalo` varchar(250) COLLATE utf8_unicode_ci default NULL ,
`oldal` varchar(60) COLLATE utf8_unicode_ci default NULL ,
`browser` varchar(20) COLLATE utf8_unicode_ci default NULL ,
`os` varchar(2 ) COLLATE utf8_unicode_ci default NULL ,
`getenv` varchar(250) COLLATE utf8_unicode_ci default NULL ,
`ujvendeg` tinyint(4) default NULL ,
PRIMARY KEY (`sorszam`)
) ENGINE = MYISAM DEFAULT CHARSET = utf8 COLLATE = utf8_unicode_ci;
A táblában az oldal mező tartalmazza a meglátogatott oldal nevét, és szeretném lekérdezni azt, hogy:
- melyik oldalt hányszor látogatták meg a lekérdezésig
- melyik napon történt az adott oldal utolsó látogatása
Az első felével nincs is gond, azt az alábbi lekérdezés megcsinálja nekem szépen
$sqlquery = "SELECT oldal, datum, COUNT(*) AS page_visitor_nums FROM visitors GROUP BY oldal ORDER BY page_visitor_nums DESC ";
De - mivel nem vagyok egy sql-bajnok - az utolsó látogatás időpontjának kinyerésével már bajban vagyok, hiába olvasgatom a mysql dokumentációt. A MAX(datum) függvénnyel próbálkoztam, de vagy elszúrtam a szintaxist, vagy nem is jó az erre ilyen csoportosítás mellett.
Meg lehet ezt csinálni egyáltalán egy lekérdezéssel?
- 923 megtekintés
Hozzászólások
Én sem SQL-ben élek, de így hirtelen dátum szerint sorbarendezni, majd a TOP-ot használva lehetne megoldani.
--
Soli Deo Gloria
- A hozzászóláshoz be kell jelentkezni
SELECT max(datum ) , oldal, COUNT(*) AS page_visitor_nums
FROM visitors
GROUP BY oldal
ORDER BY page_visitor_nums DESC
Ezt elméletileg meg kellene emésztenie...
- A hozzászóláshoz be kell jelentkezni
Hát köszönöm szépen! :-)
Ezzel a MAX() függvénnyel már mennyit nyüglődtem, de úgy látom véletlenül sem jutott eszembe ez a legkézenfekvőbb megoldás, pedig most ahogy ránéztem arra, amit küldtél, magától értetődőnek találtam... :-)
Még egyszer köszi!
És neked is köszönöm Zozz!
- A hozzászóláshoz be kell jelentkezni