[PHP/MySQL] Query 'samenvatten'

Pagina: 1
Acties:

  • DRvDijk
  • Registratie: Juni 2001
  • Laatst online: 21:43
Ik heb in mijn database table 1785 entrys... In elke entry zit een IP, een aantal hits en nog wat zooi. Er zijn 445 verschillende IP's, met elk dus een aantal hits erachter en nog wat zooi :)

Een andere table: IP & naam. Daarin is IP meestal een mask, 192.168. bijvoorbeeld.

Wat ik wil (wie heeft het nog niet geraden?) is dat ik van elke mask een optelsom krijg van het aantal hits, en van de rest van de IP's ook (die niet in de 2e table zitten).

Nou kan ik wel een for-loopje gaan maken voor 445 verschillende IP's, maar dat duurt nogal lang. Wie weet een simpelere oplossing?


Ik had al 'SELECT hits FROM data WHERE ip LIKE "192.168.%";', en dat werkt ook wel, maar dan houd ik dus een x aantal IP's over, die ook behandeld moeten worden. En hoe, dat weet ik niet....

  • DRvDijk
  • Registratie: Juni 2001
  • Laatst online: 21:43
Ahh Ik denk dat ik al een eind kom. :)
PHP:
1
2
3
4
5
6
7
8
9
10
<?
$query = 'select distinct(ip) from data where ';
for (/*het aantal verschillende ip(masks) met naam*/) {
$result = select sum(hits) from data where ip like "/*het ip dat aan de beurd is*/";
$query .= 'ip not like "/*het ip dat aan de beurd is*/" ';
// verwerk deze zooi
}
$result = mysql_query($query);
print mysql_numrows ($result);
?>

Dat geeft volgens mij de output van het aantal IP's dat dan nog niet behandeld is ;)