Funziona perfettamente, ma dovrei essere in grado di sapere anche la somma dei $row['totale'] per poter fare delle percentuali...
Dopo questo ho finito di rompere...![]()
Funziona perfettamente, ma dovrei essere in grado di sapere anche la somma dei $row['totale'] per poter fare delle percentuali...
Dopo questo ho finito di rompere...![]()
prima di quella query devi memorizzare dentro una variabile il numero di records totale.
codice:$sql="SELECT COUNT(campo) AS totale FROM tabella"; $st=mysql_query($sql) or die(mysql_error()); $row=mysql_fetch_assoc($st); $totale=$row['totale'];
think simple think ringo
Così lo avevo pensato anch'io, il fatto è che vorrei stampare il totale dei record presenti nella "top20"...
Faccio così ma mi stampa solo la prima posizione...
codice:$sql="SELECT *, COUNT(campo) AS totale FROM TABELLA GROUP BY campo ORDER BY totale DESC LIMIT 0,20"; $st=mysql_query($sql) or die(mysql_error()); $row=mysql_fetch_assoc($st); $totale=$row['totale'];
codice:$sql="SELECT COUNT(campo) AS totale FROM tabella"; $st=mysql_query($sql) or die(mysql_error()); $row=mysql_fetch_assoc($st); $totale=$row['totale']; $sql="SELECT *, COUNT(campo) AS totale FROM tabella GROUP BY campo ORDER BY totale DESC LIMIT 0,5"; $st=mysql_query($sql) or die(mysql_error()); while ($row=mysql_fetch_assoc($st)) echo "artista: ".$row['campo']." totale: ".$row['totale']." percentuale: ".ceil(($row['totale']/$totale)*100);
think simple think ringo
Questo l'ho gia fatto...
il problema è che in ceil(($row['totale']/$totale)*100) la voce $row['totale'] si riferisce al totale di tutti i record dentro 'campo', io dovrei fare in modo che si riferisca al totale di tutti i record della top20 (LIMIT 0,20) dentro 'campo'...
Originariamente inviato da djteschio
Questo l'ho gia fatto...
il problema è che in ceil(($row['totale']/$totale)*100) la voce $row['totale'] si riferisce al totale di tutti i record dentro 'campo', io dovrei fare in modo che si riferisca al totale di tutti i record della top20 (LIMIT 0,20) dentro 'campo'...
il secondo $row['totale'] ti restituisce il numero di volte che un artista compare nel db
ID artista
1 art1
2 art2
3 art3
4 art1
5 art1
6 art3
dalla prima query avrai $totale = 6.
dalla seconda avrai una cosa del tipo:
artista: art1 totale: 3 percentuale: 3/6*100
artista: art3 totale: 2 percentuale: 2*6/100
artista: art2 totale: 1 percentuale: 1*6/100
think simple think ringo
A me interessa sapere un $row['totale'] che mi restituisca il numero di volte che un artista PRESENTE NELLA TOP20 compare nel db...
non a somma di tutti (quelli che compaiono nella top20 e non..)
come sn strutturate le tabelle??
think simple think ringo
id - data - campo (che è dove devo agire io)
la top20 è composta dai gruppi che compaiono il maggior numero di volte in questa tabella, giusto??Originariamente inviato da djteschio
id - data - campo (che è dove devo agire io)
think simple think ringo