Faire la somme d'un count dans une requête
Bonjour à tous ;
je ne sait pas si le sujet résume mon problème mais c'est ce que je souhaiterai de faire en fait voilà si je résume bien ce que je dois faire :
y a une table PoliceClientphp qui relie les clients qui contractent un contrat ou plusieurs contrats (police) auprès des compagnies à partir de 2 intervalles de date , je ne vais pas mettre le formulaire pour les date et la récupération mais voici la requête
Code:
1 2 3 4 5
|
$sql = "SELECT NumPol, IDCabinet ,Codeclient,Denomination,Dateeffet,Typedepolice,CodeCompagnie ,
Codeetatpolice,count(CodeCompagnie) as bilan FROM PoliceClientphp
where Dateeffet between #$recherhe# and #$limite#
GROUP BY CodeCompagnie,Codeetatpolice,Typedepolice,IDCabinet,Codeclient,Denomination,Dateeffet,NumPol"; |
numpol : correspond au numéro du contrat donc unique
CodeCompagnie correspond à l'identification de la compagnie
en effet si on se réfère à ce tableau de $compagnie codeCompagnie correspond aux clés : 116 ..122
Code:
1 2 3 4 5
|
$compgagnie = array(
"116" =>"LA LILLOISE","122"=>"ALLIANZ VIA","124"=>"APG","129"=>"SOLLY AZAR","131"=>"CAMAT ASSURANCES","132"=>"CARDIF","134"=>"CIGNA FRANCE",
"135"=>"CONCORDE PLAISANCE","138"=>"ELVIA VOYAGES"); |
j'arrive à afficher les noms des clients et les contrats correctement sauf qu'après je dois faire un bilan sur les compagnies c'est à dire par exemple sur les intervalles de date :
combien pour la compagnie Allianz
combien pour AGF etc ..
y a une vingtaine d'entreprise :cry:
comme vous pouvez remarquer j'ai dèjà mis
Code:
count(CodeCompagnie) as bilan
et il compte le nombre de compagnie sauf que mon but c'est de connaître combien la compagnie AGF apparait dans la table = nombre de contrat chez AGF à vrai le nombre d'occurence :aie:
autre idée , c'est que je pensais à faire une sous requête
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
foreach ($compgagnie as $val=>$donneecompagnie)
{
$bilan = "Select distinct CodeCompagnie ,count(CodeCompagnie) as bilan FROM PoliceClientphp
where Dateeffet between #$recherhe# and #$limite# and CodeCompagnie =$val group by CodeCompagnie";
$resultatbilan = odbc_do($cnx, $bilan) ;
while( $result = odbc_fetch_object( $resultatbilan ) )
{
switch ($val)
{
case 116 :
$lilloise = $result->bilan;
break ;
case 122 :
$allianz = $result->bilan;
break ;
case 124 :
$apg = $result->bilan;
break ;
case 1074 :
$agfparticulier = $result->bilan;
break ;
}
}
}
echo 'la valeur particulier'.$agfparticulier."<br />";
break ; |
et voilà , je nesais pas s'il y a un moyen plus simple d'y procéder :cry:
merci d'a:ccool:vance