Avatar billede topsite Nybegynder
08. juni 2003 - 19:19 Der er 6 kommentarer og
2 løsninger

Sortering af SQL - Group?

Jeg har i min database:

ip            browser  refere
80.161.119.123 Mozilla  http://mysite.dk/top10.php
80.181.111.74  IE6      http://mysite.dk/index.php
74.212.151.32  Opera    http://mysite.dk/odense.php
33.52.145.132  IE6      http://mysite.dk/top10.php
80.181.111.74  IE6      http://mysite.dk/index.php
80.181.111.74  IE6      http://mysite.dk/index.php

Jeg skal have følgende resultat:

http://mysite.dk/index.php er blevet vist 3 gange. (og kommer øverst)
http://mysite.dk/top10.php er blevet vist 2 gange. (nummer 2)
http://mysite.dk/odense.php er blevet vist 1 gang. (sidst)

Der skal vel noget GROUP ? til i min query?

Desuden vil jeg gerne have lavet:
81% brugte IE6
15% brugte Mozilla
3% brugte Opera

Kan man det ?
Avatar billede topsite Nybegynder
08. juni 2003 - 19:20 #1
Ser lidt uoverskueligt ud i EXP
kig her.
http://get2hits.danielbahl.info/exp.txt
Avatar billede detox Nybegynder
08. juni 2003 - 19:31 #2
Det kan man da:
SELECT refere FROM tabel GROUP BY refere ORDER BY refere
Avatar billede Slettet bruger
08. juni 2003 - 19:36 #3
HITS:
$sql = "SELECT refere, count(*) as hits FROM tabel where 1 group by refere order by hits";
$result = mysql_query($result);
while($row = mysql_fetch_array($result))
{
    echo $row['refere']." ".$row['hits']."<br>";
}
Browsere:
$sql = "SELECT count(*) FROM tabel where 1";
$result = mysql_query($sql);
$hits = mysql_result($result,0);
$sql = "SELECT browser, count(*) as hits FROM tabel where 1 group by browser order by hits";
$result = mysql_query($result);
while($row = mysql_fetch_array($result))
{
    echo $row['browser']." ".(($row['hits']/$hits)*100)."%<br>";
}
Avatar billede ohmish Nybegynder
08. juni 2003 - 19:45 #4
er browser-tallene opdelt i særskilt tabel med tal, eller ligger det i hver brugerrække med indhold fra $_SERVER['HTTP_USER_AGENT'] ?
Avatar billede tipsen Nybegynder
08. juni 2003 - 20:47 #5
Såvidt jeg kan se er "WHERE 1" bare en tidsrøver...

$sql = 'SELECT referer, COUNT(*) AS hits FROM tabel GROUP BY referer ORDER BY hits ASC';
Avatar billede andy Nybegynder
10. juni 2003 - 10:59 #6
du mener vel,
$sql = 'SELECT refere, COUNT(*) AS hits FROM tabel GROUP BY refere ORDER BY hits DESC';

? :)
Avatar billede tipsen Nybegynder
10. juni 2003 - 11:36 #7
andy: Har bare for vane at rette stavefejl...
Avatar billede topsite Nybegynder
10. juni 2003 - 13:44 #8
Regin, Jeg mangler stadig at teste Browserne, jeg vender tilbage!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB

BEC Financial Technologies

Business Continuity Manager - Technical

Netcompany A/S

Linux Operations Engineer

BEC Financial Technologies

Senior Platform/System Engineer

Forsvarsministeriets Materiel- og Indkøbsstyrelse

DevOps Engineer (AI) til Forsvarets nye IT-platform