genmin Posté 17 Décembre 2004 Partager Posté 17 Décembre 2004 bonjour, voilà j'ai une série d'enregistrement avec un champs 'code' (code postal) et je souhaiterai réaliser une requete pouvant me donner le nombre d'enregistrement par département ( 13001, 13002, 13003 étant dans le meme département 13) Est ce que quelqu'un à une idée ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Titag Posté 17 Décembre 2004 Partager Posté 17 Décembre 2004 Salut, Essaye avec WHERE code_postal='13%' Je ne sais pas si ca marche avec un type numérique par contre. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Judefruit Posté 17 Décembre 2004 Partager Posté 17 Décembre 2004 Essaye avec WHERE code_postal='13%' <{POST_SNAPBACK}> Ah presque SELECT * FROM ta_table WHERE code_postal LIKE '13%' Lien vers le commentaire Partager sur d’autres sites More sharing options...
genmin Posté 17 Décembre 2004 Auteur Partager Posté 17 Décembre 2004 (modifié) Je crois que je me suis mal fait comprendre. admetons que j'ai 10 enregistrement au total: 1 -> 13007 2 -> 13005 3 -> 13007 4 -> 75014 5 -> 13007 6 -> 13005 7 -> 75014 8 -> 13005 9 -> 75015 10 -> 13005 je voudrai avoir comme résultat 13000 -> 7 75000 -> 3 Modifié 17 Décembre 2004 par genmin Lien vers le commentaire Partager sur d’autres sites More sharing options...
kamino Posté 17 Décembre 2004 Partager Posté 17 Décembre 2004 Bonjour, Si çela peut t'aider: create table test(a int); insert into test (a) values(75020); insert into test (a) values(75020); insert into test (a) values(75020); insert into test (a) values(75016); select a,count(a) from test group by a; +-------+----------+ | a | count(a) | +-------+----------+ | 75016 | 1 | | 75020 | 3 | +-------+----------+ 2 rows in set (0.00 sec) Cordialement, Lien vers le commentaire Partager sur d’autres sites More sharing options...
kamino Posté 17 Décembre 2004 Partager Posté 17 Décembre 2004 je voudrai avoir comme résultat 13000 -> 7 75000 -> 3 <{POST_SNAPBACK}> ah pardon, tu veux le nombre d'occurence par code postal de département ? par exemple: 75000 -> 10 j'ai 10 arrondissements differents enregistré dans le 75 et pas j'ai 3 enregistrement dans le 20ème 2 dans le 16ème etc.. ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
genmin Posté 17 Décembre 2004 Auteur Partager Posté 17 Décembre 2004 (modifié) c'est presque ca, je voudrai savoir que j'ai 7 enregistrement dans le département 13 (13007=3 + 13005=4) et 3 dans le département 75 (75014=2 + 75015=1) ps: j'ai pas besoin du détail. seul le résultat par département m'interesse Modifié 17 Décembre 2004 par genmin Lien vers le commentaire Partager sur d’autres sites More sharing options...
kamino Posté 17 Décembre 2004 Partager Posté 17 Décembre 2004 je vois un truc comme ça mais c'est sûrement pas parfait: select "75000" as dep, count(a) from test where a like "75%" group by dep; Si ça peut t'aider.... Lien vers le commentaire Partager sur d’autres sites More sharing options...
genmin Posté 17 Décembre 2004 Auteur Partager Posté 17 Décembre 2004 ok on ce rapproche, effectivement c'est bien cela, mais je me demandais si il était possible de réaliser une seul requete pour tout les départements, ou dois je me tapper autant de requete que de département francais ??? Lien vers le commentaire Partager sur d’autres sites More sharing options...
kamino Posté 17 Décembre 2004 Partager Posté 17 Décembre 2004 Ben en fait, il faudrait voir s'il existe pas des fonctions dans mysql qui permettraient d'arrondir vers l'inférieur 25410 en 25000 par exemple, ainsi tu aurais un truc du genre : select fonctionkiarrondie(a) as dep, count(a) from test where a like "75%" group by dep; En fait je connais pas bien MySQL, faudrait lire attentivement la doc. Lien vers le commentaire Partager sur d’autres sites More sharing options...
kamino Posté 17 Décembre 2004 Partager Posté 17 Décembre 2004 trouvé !! A condition que ton champ a, qui contient les codes postaux, soit un type numeric, int : en reprenant mon test: insert into test (a) values(13000); SELECT TRUNCATE(a,-3) as dep, count(a) from test group by dep; +-------+----------+ | dep | count(a) | +-------+----------+ | 13000 | 1 | | 75000 | 4 | +-------+----------+ 2 rows in set (0.00 sec) Lien vers le commentaire Partager sur d’autres sites More sharing options...
genmin Posté 17 Décembre 2004 Auteur Partager Posté 17 Décembre 2004 de la balle. C'est nickel, ca marche d'enferre Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant