Originariamente inviato da Pennywise83
1) Avere una top ten di questi articoli. Mettiamo che nel database ho decine e decine di articoli io vorrei estrarre solo i primi 10.
SELECT * FROM
(SELECT t.id_gioco, COUNT(t.id_gioco) AS t_quanti
FROM tabella AS t
GROUP BY t.id_gioco
ORDER BY t_quanti DESC) AS temp
LIMIT 10


2) Per ogni singolo articolo mostrare la sua posizione in classifica. Qualcosa come "Posizione: 14 su 90" dove 90 è il numero totale di articoli e 14 la posizione del singolo articolo.

SELECT t.id_gioco, COUNT(t.id_gioco) AS t_quanti
FROM tabella AS t
GROUP BY t.id_gioco
ORDER BY t_quanti DESC

Quando esegui la select devi fare una cosa del genere:

$i=1;

while ($row = @mysqli_fetch_assoc($query))
{
$articolo = $row['id_gioco'];
$posizione_articolo[$articolo] = $i;
$i++
}

Cioé ti crei un array in cui l'indice è il contenuto di id_gioco ed in corrispondenza di quell'articolo c'è la sua posizione in classifica. Per intenderci; se vuoi sapere la posizione dell'articolo 40 questa sarà:

$posizione_articolo[40]