Salve a tutti,
il problema di oggi è il seguente...
ho degli iscritti ad una newsletter (sul database) e vorrei fare un piccolo report diviso per nazione.

ho una array associativo delle nazioni tipo "IT"=>"Italia"

il problema è che l'array è parecchio nutrito (tipo oltre il centinaio di record)

per generare la mia tabella ho creato una cosa del genere (che restringo per celerità)


Codice PHP:
$countries2=array("AF"=>"Afghanistan","AL"=>"Albania","IT"=>"Italy","JM"=>"Jamaica","JP"=>"Japan","US"=>"United States");
$list='';
$c=0;
foreach (
$countries2 as $sigla=>$paese){
    
    if(
$c>0){
    
$comma=",";
    }else{
    
$comma="";
    }
    
$list.=$comma SUM(IF(country='$sigla',1,0)) AS ".fullReplace($paese);
    
$c++;
}
//print $list;
//////////////////////////////////////////////////////////////////////////////////////////

$q="SELECT $list FROM mailing GROUP BY country ORDER BY country";


//che genera questa 

/*
SELECT SUM(IF(country='AF',1,0)) AS Afghanistan , SUM(IF(country='AL',1,0)) AS Albania , SUM(IF(country='IT',1,0)) AS Italy , SUM(IF(country='JM',1,0)) AS Jamaica , SUM(IF(country='JP',1,0)) AS Japan , SUM(IF(country='US',1,0)) AS United_States FROM mailing GROUP BY country ORDER BY country
*/ 
il problema è che con l'array originale (quello massiccio) non funziona....

esiste un modo per ottenere lo stesso risultato in maniera più funzionale??

grazie!!!