Rechercher : dans
Par :

Php/sql Count et group by

Dernière réponse le 4 jun 2009 à 10:36:21 Koki, le 16 jun 2008 à 10:26:25 
 Signaler ce message aux modérateurs

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 !

Configuration: Windows 2000
Internet Explorer 6.0

Meilleures réponses pour « Php/sql Count et group by » dans :
[PHP] Headers already sent by..... VoirLorsque vous utilisez une fonction PHP qui manipule les en-têtes HTTP comme par exemple: header() setcookie() session_start() Il est important d'utiliser ces fonctions avant d'avoir généré le moindre flux vers le client. A partir du moment où...
Télécharger PHP FTP Synchronizer VoirLa mise à jour de site web est aussi complexe que sa conception. Alors il faut utiliser le bon outil avec les bon paramètres et une bonne connaissance de programmation pour mettre à jour un site. PHP FTP Synchronizer est une application vous...
SQL - Commande SELECT VoirLe langage de manipulation de données Le SQL est à la fois un langage de manipulation de données et un langage de définition de données. Toutefois, la définition de données est l'oeuvre de l'administrateur de la base de données, c'est pourquoi la...
SQL - Tri VoirTri des résultats Il est possible en SQL d'organiser les résultats grâce à la clause ORDER BY. La clause ORDER BY est suivie des mots clés ASC ou DESC, qui précisent respectivement si le tri se fait de manière croissante (par défaut) ou...
Le langage SQL VoirQu'appelle-t-on SQL? SQL (Structured Query Language, traduisez Langage de requêtes structuré) est un langage de définition de données (LDD, ou en anglais DDL Data Definition Language), un langage de manipulation de données (LMD, ou en anglais DML,...

1

feez, le 16 jun 2008 à 10:29:04

^^
tu peux pas mettre count(*). Le count doit porter sur un champ en particulier. tu peux mettre count(numemp). Ca marchera je pense.

Répondre à feez

2

feez, le 16 jun 2008 à 10:29:55

Pardon, numemp n'est pas un champ de ta table. Essaye count(numAppel).

Répondre à feez

3

Koki, le 16 jun 2008 à 10:30:49

Non toujours pas , aucun résultat :/

Je travaille avec Easyphp pour information

Répondre à Koki

4

feez, le 16 jun 2008 à 10:31:28

Fais un copier-coller de ton code plesae.

Répondre à feez

5

Koki, le 16 jun 2008 à 10:36:18

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)

Répondre à Koki

6

Koki, le 16 jun 2008 à 11:32:00

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 ?

Répondre à Koki

7

feez, le 16 jun 2008 à 11:35:46

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...

Répondre à feez

8

Koki, le 16 jun 2008 à 11:41:20

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 ?

Répondre à Koki

9

feez, le 16 jun 2008 à 11:46:43

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.

Répondre à feez

10

Koki, le 16 jun 2008 à 11:49:16

Tout les résultats sont la..

Répondre à Koki

11

feez, le 16 jun 2008 à 11:56:48

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.^^

Répondre à feez

12

Koki, le 16 jun 2008 à 12:00:56

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 ;)

Répondre à Koki

13

 rikemSen, le 4 jun 2009 à 10:36:21
  • +1

$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'];

Répondre à rikemSen
Collection CommentÇaMarche.net