Php/sql Count et group by

Résolu
Koki -  
 rikemSen -
Bonjour,

J'ai actuellement un probleme très bete avec une requete sql :

J'ai une table Appel , qui recense des informations sur les appels reçus (je suis en stage dans un service informatique) , et je voudrais selectionner le nombre d'appel qui répondent a 2 conditions , donc ca devrait donner :


Ma table Appel :
(NumAppel NomEmpApp PrenomEmpApp OrdinateurEmpApp ProblemeApp date VilleApp heure )



Select count(*)
FROM Appel
Where VilleApp = 'Perols'
AND ProblemeApp = 'Connexion'

Hors cette requete n'affiche aucun résultat , (enfin si , 0)

J'ai donc pensé à faire un regroupement

Select count(*) , VilleApp , ProblemeApp
FROM Appel
Where VilleApp = 'Perols'
Group By VilleApp , ProblemeApp


Et cette requete ne me renvoit strictement rien..

Si vous pouvez me donnez un conseil , je vous en remercie d'avance !

6 réponses

rikemSen
 
$req = mysql_query('SELECT count(ton_champs) as `virtual_name` FROM ta_table WHERE truc="truc";') or die (mysql_error());
$data = mysql_fetch_array($req);
echo $data['virtual_name'];
1
Utilisateur anonyme
 
^^
tu peux pas mettre count(*). Le count doit porter sur un champ en particulier. tu peux mettre count(numemp). Ca marchera je pense.
0
Utilisateur anonyme
 
pardon, numemp n'est pas un champ de ta table. Essaye count(numAppel).
0
Koki
 
Non toujours pas , aucun résultat :/

Je travaille avec Easyphp pour information
0
Utilisateur anonyme
 
fais un copier-coller de ton code plesae.
0
Koki
 
while ($incid2)
{
echo "<th>$incid2[0] </th>";
while ($ligne)
{
$reqinc = (Ici , la requete que je cherche)
$resinc = mysql_query($reqinc,$connexion);
$ligneinc = mysql_fetch_array($resinc);

echo "<tr><td>$ligne[1]</td> <td> $ligneinc[0] </td> </tr>";
$ligneinc=mysql_fetch_array($resinc);
$ligne=mysql_fetch_array($res);
}
$incid2 = mysql_fetch_array($res2);
}


En gros , j'ai déja fait 2 requetes avant pour lire toutes les agences et tout les types de probleme (qui sont dans d'autres tables) , a chaque incrementation , je vais donc mettre en variable le probleme et l'agence (pour faire un tableau qui m'affichera tout)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Koki
 
Je viens de tester une autre requete , pour etre sur , et ...

Select NumAppel
from appel where VilleApp = 'Gestion des flux' and ProblemeApp = 'Connexion'

ne me retourne AUCUN resultat , quel probleme pourrait-il y avoir dans ma table pour qu'il y ait ce genre de probleme ?
0
Utilisateur anonyme
 
soit tu te trompes dans les noms des champs, soit c'est dans ton php que ça va pas... Au lieu d'utiliser array, j'utiliserais row à ta place. J'ai jamais eu de problèmes avec alors que avec array si...
0
Koki
 
Je ne fais pas les test sous php , je fais les tests directement sur easyphp (j'execute les requetes en direct).


Il n'y aurait pas une autre solution pour avoir le count avec 2 conditions ?
0
Utilisateur anonyme
 
t'as requête à l'air tout à fait bonne. Y'a pas de raison que ça foire. Encore un test: Exécute cette requête :
select * from appel.
0
Koki > Utilisateur anonyme
 
Tout les résultats sont la..
0
Utilisateur anonyme > Koki
 
tu es sur que tu as des enregistrements qui correspondent aux critères? Je sais c'est bête comme question mais on sait jamais.^^
0
Koki > Utilisateur anonyme
 
Oui j'en suis sur :D

Encore autre chose..Cette requete :

$reqinc = "Select count(*) from appel where ProblemeApp = '$incid2[0]' AND VilleApp = '$ligne[1]';";

(j'ai inversé problemeapp et villeapp) me renvoit les résultats que je veux...

Il ne me reste plus qu'a faire les bonnes boucles php pour afficher cela pour tout les problemes (car la , dans mon code php il n'affiche que pour le premier probleme...)

Je refuse de comprendre , je vais manger , merci de m'avoir aider ;)
0