Page 162 - Corso di PHP - Livello base
P. 162
24. Operazioni sul database: funzioni aggregate e query
annidate
Terminiamo il nostro panorama sulle operazioni che si possono
fare sul database parlando di funzioni aggregate e di query
annidate. Iniziamo dalle prime, dette anche “funzioni di
aggregazione”: si tratta di una serie di funzioni che il
linguaggio SQL ci mette a disposizione per estrarre diversi tipi
di informazione dal nostro database, perlopiù di tipo statistico.
Supponiamo, per esempio, di voler creare una pagina all'interno
della quale inserire una serie di statistiche relative al nostro
blog. Potremmo iniziare dal numero complessivo dei post
presenti nel blog (e quindi nel database). Come fare per sapere
quanti sono? Utilizziamo la funzione aggregata COUNT, che
invocheremo sulla tabella dando un nome al risultato che verrà
estratto tramite la clausola AS. Vediamo la sintassi:
$query = "SELECT COUNT(*) AS TotalePost FROM Post";
$risultato = mysql_query($query);
Tutte le funzioni devono essere invocate dopo il comando
SELECT. Nel nostro caso, invochiamo la funzione COUNT su
tutti i campi (*) e quindi chiamiamo il risultato TotalePost.
Possiamo poi stampare il tutto come abbiamo visto finora:
while ($record = mysql_fetch_array($risultato, MYSQL_ASSOC))
{
echo "Totale post presenti nel blog: "; echo $record['TotalePost'];
}
Supponiamo invece di voler conoscere il numero totale dei
commenti ma senza operare sulla tabella Commenti: vogliamo
utilizzare un campo NumCommenti della tabella Post in cui
162